Finding a Web Host and Installing WordPress

WordPress Varieties

  • WordPress.com — a version of WordPress that is hosted for free at the WordPress.com website. When you sign up for a WordPress.com account, you don’t have to worry about installing WordPress. You just sign up, and you’re given a login to an account that has WordPress already set up for you. You can pay extra to get a dedicated domain name, so that it doesn’t look like: http://askwpgirl.wordpress.com. However, installing plugins (those wonderful applications that extend the functionality of your WordPress application) is not be possible, and you’re limited as to how much you can modify your WordPress theme. The upside is that it is completely and utterly FREE (aside from paying for a dedicated domain name if you want to get rid of the wordpress.com in your URL), and you don’t have to do any real set up other than pick a theme (which determines how your site looks) and start blogging away!
  • Self-Hosted WordPress — you can install the WordPress application on your own domain (e.g. http://askwpgirl.com) and have complete control over ALL of your content, not to mention having your own domain name. To install the self-hosted version of WordPress, you will need to:
  1. Register a domain name (see Registering a Domain Name below). GoDaddy.com provides pretty good pricing for domain names.
  2. Sign up for web hosting (see Finding a WordPress Friendly Web Host below).
  3. Point your domain name to the web host (see Modifying Name Servers below).
  4. Install WordPress (manually or using a one-click install button).

Step 1 – Registering a Domain Name

This part is easy. The hard part is finding a domain name that you like and is AVAILABLE! I usually register my domain names through GoDaddy.com, because the prices are reasonable ($10/year). The place you buy the domain name from is called your “Domain Registrar.” There is a benefit of registering your domain name with the SAME company that will be your web host because then you have only 1 bill to pay each year AND you don’t have to mess around with telling the Registrar who your web host is. However, you should check the prices carefully, because some web hosting companies will charge $10 the first year and then $35 for each subsequent year. Also, you can and should purchase 5-10 years of domain registration at a time to avoid inadvertently losing your domain name because you forgot to renew, so you want to get a good price on that. It also helps with search engine optimization to not do annual renewals of your domain name.

You can certainly make life easier on yourself by registering your domain at the same place where you purchase your web hosting, in other words, with Host Gator and other WordPress-friendly hosts, you can certainly purchase your domain name and web hosting all in one fell swoop and be able to skip to step 2 below and skip step 3 entirely!

The Domain Registrar’s job is to tell the world: 1) WHO owns the website name and 2) WHERE people can find the website content. In this respect, the Registrar is little more than a directory that you have to pay $10/year to be a part of to maintain ownership of your domain name. As a directory, the registrar does not necessarily provide a PLACE for your website to live, it just provides you the name. That’s it. You then have to pick a house (aka HOST) for your website and tell the Registrar who that host is, so people who want to visit you know which of the millions of web servers in the whole wide world is hosting your site. Again some registrars, like GoDaddy, also provide web hosting, so shop around to find the best price for the domain and hosting.

Step 2 – Finding a WordPress Friendly Web Host

There are some minimum requirements for hosting WordPress (from http://wordpress.org/about/requirements/):

  • PHP version 4.3 or greater
  • MySQL version 4.1.2 or greater
  • Apache mod_rewrite module (for clean URLs known as Permalinks)
  • Linux operating system (technically, WordPress can run on Windows, but you may encounter problems with Permalinks and some plugins working, so it’s a lot less headache to just go with Linux and a web host who does a lot of WordPress hosting)
  • Note: some plugins may require higher PHP or MySQL versions.

WordPress.org has a list of recommended web hosts at http://wordpress.org/hosting/. I personally prefer Host Gator. (Note: I receive an affiliate commission for hosting accounts purchased from my site from both Blue Host and Host Gator – both of which I’ve experienced good service.)

Host Gator has a WordPress Auto-Install via Fantistico (which I don’t think is all that fantastic and rarely installs the most current version of WordPress, but it’s simple). Host Gator in my experience has great technical support, good server speeds, fairly reliable up time, can run backup software quickly, and has a great Business plan which includes dedicated IP address and SSL certificate.

Be sure to read this hosting review by iThemes in relation to how their backup plugin, BackupBuddy, runs on various web hosts.

Finding a host that specifically supports WordPress is important and isn’t too slow is important. I personally have not had good experiences with Network Solutions, Go Daddy, Yahoo, or Blue Host. Blue Host is better than the others in terms of WordPress support but sites tend to run slow.

Step 3 – Modifying the DNS (Domain Name Servers)

So, now you have a domain name and a web host. If your domain name registrar and your web host are one in the same, you are ready to install WordPress and set up your website. But, if you registered your domain name at GoDaddy.com for example and then set up your Web Hosting with Blue Host, you will need tell the registrar who your web host is. This is done as follows:

  1. Call or visit your web hosts website and find out the names of their DNS (Domain Nameservers) are. You will receive two address that look something like: ns1.bluehost.com and ns2.bluehost.com. You can usually find this information in the Support area. Just search on DNS or nameservers, or give tech support a quick call. If they are good web host, this should very easy to find out. Often, you get the namesever names in your Welcome email.
  2. Login to the Domain Registrar’s website (the place where you purchased the domain name) and go to the area where you manage your domain registration and change what is called the DNS or Nameservers. The nameservers tell the world wide web who your web host is. Change the nameservers to be the names you received from your web host in step 1 above.
  3. It will take anywhere from 2-24 hours for the changes to take effect. Once you are able to see the welcome or placholder page for your domain name at the new web host, you can install WordPress. More posts to come on that process!!!

Step 4 – Install WordPress via the Web Host’s One-Click Install

All of the web hosts listed above have a one-click install application to install WordPress.When installing WordPress, be sure to install it in the root directory of the site (rather than a subdirectory) if you want the WordPress site to display from your main site URL.

It is possible and sometimes preferable to install WordPress in a subdirectory and then redirect it to the root directory later (or never) (see Moving WordPress from Subdirectory to Root), but if you’re only going to be using WordPress on your site and have no other applications running other than WordPress, then you may as well go ahead and install it in the root.

When you do install WordPress, be sure to use an admin username that is not “admin” for security purposes and use a long/strong password.

Here are some online instructions you can refer to:

Angela Bowman

Front-end WordPress developer since 2007 building highly custom websites for nonprofits and small businesses. Experienced in nonprofit administration, grant writing, and technical writing. Love high altitude hiking and backyard chickens.

View all posts by Angela Bowman

22 comments on “Finding a Web Host and Installing WordPress

  1. Angela,

    I have followed the instructions here and on many websites; however, I am having some issues that I can’t figure out. For some reason, when I go to site.com/wp-admin it redirects to site.wordpress.com/wp-admin. I lose all functionality of plugins and other customizability. My domain name and hosting is with GoDaddy.

    Any ideas?

    Dustin

  2. Hi Angela,

    I have downloaded wordpress and followed the 5 min installation form the wordpress site. I created my database, and updated the wp-config.php file. I then created a sub directory /blog on the server and uploaded all the wordpress files. on the last step http://www.mdlinsulation.ie/blog/wp-admin/install.php it throws up a 404 error!

    Any ideas as to what i’ve done wrong?

    ps. on the server there was a folder in the root called mdlinsulation.ie, should i delete this folder?

    any advice greatly appreciated! 🙂

    Kate

  3. Yes weird indeed. I did install to a subdir and all was fine (eventually) & I could login via http://www…../wp-admin, but in my theme there is a user menu which, based on isUserLoggedIn, shows either (LogIn, SignUp) or (MyProfile, Logout). So when I visit the site from the Dashboard my user menu shows (Login, SignUp) even though I’m logged in as admin. This was working fine when I was developing locally. Then when I hit log in i get 404 error, and even if I try to access login via http://www…../wp-login I also get 404. Anyway I have now moved all files to the root folder and it seems to be behaving better now. Thanks for the quick response though.

    • Oh, so you MIGRATED a site? If that’s the case, you should login to the phpMyAdmin via your web hosting control panel and be sure the home and site_url in the wp_options table are set to the new URL for the site which would be http://sitename.com/subdirectory. If you need the username/password for your database when you try to login via phpMyAdmin, then you can get that from the wp-config.php file. Also, if you migrated the site, obviously, you would have needed to also export your local database and import the database to the hosting account. Not sure what steps you’ve taken here, you would have to clearly write out every step you took. Users tend to leave out a lot and assume the problem is related to something it’s not at all related to.

      • Yes I did migrate from my local machine.
        I already did as you say, restored my local db to the newly created one, amended wp_options appropriately, amended wp-config.php appropriately, copied index.php to the root and amended require(‘./wp-blog-header.php’); with a prefix of my subfolder name. Also amended index.php in subfolder to ‘Silence is golden’. Copied all my themes, plugins and data under wp-content. So dunno. Anyway, I have since removed the whole installation and re-installed in my public_html folder. All is well now except if I log into my site, when I log out I get a message saying ‘You are attempting to log out of . Do you really want to log out ?’ This was not happening on my local site. Any idea what might be causing this  ?

        • Ah! Yes, so many things can be strange when you migrate from your local server. It sounds like you did all the important things: change the wp-config.php file to use the database on your hosting account, export the database on the local computer and import it into the database on the hosting account (did you do that?), change the wp_options, copy all the WP files, then, manually edit the .htaccess file, and finally, login and run the Search and Replace plugin to get rid of all refs to your local url to use the new url.

          I am going to write a blog post on this process, because to make it a piece of cake, I ALWWAYS use the BackupBuddy plugin http://askwpgirl.com/go/backupbuddy.php. BackupBuddy backs up your ENTIRE WP install including files and db. You download this zip file plus the migrate script called importbuddy.php. Upload both these files to the new host’s public_html folder, create a new BLANK database at the web host and take note of settings, then go to the new url mydomain.com/importbuddy.php and BackupBuddy will do the rest of the work for you.

          I am available for hire for this process if you need. It usually takes 30-60 minutes with my getting all your login credentials, etc.

          • Thanks, but it’s all up and running now. Sounds like a good idea to blog this process The only issue I have now is the  log out problem. Been searching around for an answer and it seems I’m not the only one who has had this problem. I’ll keep searching I guess.

          • Oh, I didn’t know you had it all working. That’s cool. For the log out problem, try to delete your browser cookies. It will force you to re-login, but I think that will do the trick!

          • Mmm afraid not. It is a WordPress Failure Notice. Don’t understand this as it was working fine on my local install.

          • Yes, I’ve experienced the same thing before, and I’m trying to wrack my brain about what caused it. A few things to check/try that would be helpful no matter what:

            1 – reset your encyrption cookies in the wp-config.php because it might have perceived that you were still logged in. There’s a URL in the wp-config file:

            https://api.wordpress.org/secret-key/1.1/salt/

            Go to that and then replace what you get there for the area of your wp-config file that says this:

            define(‘AUTH_KEY’, ‘put your unique phrase here’);
            define(‘SECURE_AUTH_KEY’, ‘put your unique phrase here’);
            define(‘LOGGED_IN_KEY’, ‘put your unique phrase here’);
            define(‘NONCE_KEY’, ‘put your unique phrase here’);
            define(‘AUTH_SALT’, ‘put your unique phrase here’);
            define(‘SECURE_AUTH_SALT’, ‘put your unique phrase here’);
            define(‘LOGGED_IN_SALT’, ‘put your unique phrase here’);
            define(‘NONCE_SALT’, ‘put your unique phrase here’);

            2 – Open your wp-config.php file and make sure that it is connecting to the correct database on the hosting account and not on your local computer.

            3 – Sometimes conflicting plugins can cause weird failures and errors, and you can rule this out by renaming your plugins folder in your FTP application “plugins-old.” Sometimes after migrating plugins that were active are activated on the live server not quite correctly. Then login to the site, go to the Plugins error, it will show all the plugins as missing and therefore de-activated, then try to log out.

            4 – Makes sure all the WordPress files copied correctly to the live server.

            Please let me know what you find!

          • Hi, eventually found the solution which is so simple and obvious I don’t know how I missed it. I installed Wrodpress on the server via Softaculous & then copied my theme and plugins across. It seems in the installation in General Settings while it had set Site Address to http://www.mysite.co.uk, it had set WordPress Address to http://mysite.co.uk – Adding the missing www. to the WordPress Address has fixed the problem. Thanks for your interest and help in all this.

          • Hi Ian,

            Thanks for sharing that! Yes, it’s important that those two URLs are the same. This is why I have an FAQ on moving WordPress that takes note of those fields. I’ll be sure to make a special note that the URLs need to match with the www. or not www. Glad you figured it out. Usually these problems are simple like that — a little typo or iconsistency. Sometimes just “talking” about it makes you look harder at the settings you’ve made.

            Cheers,

            Angela

  4. Hi WPGirl,
    I’ve just installed my first wordpress site and it all seems to be working ok except when I visit the site from the wp-admin dashboard my site thinks I’m not logged in, and when I enter my login credentials i get a 404 page not found error. Obviously I’ve missed something but I don’t know what. Any ideas ?

    • Weird. How did you install the site? Where did you install the site? Usually, people login via mysite.com/wp-admin. If you installed it in a subdirectory, you would log in via mysite.com/subdirectory/wp-admin. If by “dashboard thinks I’m not logged in” you mean that the little bar at the top with the admin options does not display at the top of the pages, then you need to go to Users in the Dashboard and edit your user to display the Toolbar when viewing the site.

  5. How do you install WP when you have your own server, and you don’t have fantasico any longer? My site is bigger so I had to leave a shared hoster… I need step by steps on how to create a database, sql, set up wordpress, etc. It’s a nightmare without fantasico! cry! I will donate if  you help me! I have a few sites to create! Also I need t blow out Joolma and add WP in it’s place. I need to create one from scratch… 

    • WordPress.org has great instructions on how to manually install WordPress. You can find them here:

      Read this page and then follow the Famous 5 Minute install instructions: http://codex.wordpress.org/Installing_WordPress

      It’s also important that certain things are enabled on the server, such as:

      Apache server

      PHP 5.2.4 or greater
      MySQL 5.0 or greater
      The mod_rewrite Apache module

      1) PHP’s exec() function.
      2) Permission to run Linux’s `zip` command.
      3) The directory containing the `zip` command is included in the PATH environment variable available to the process executing the command passed to the exec() function

      For WordPress to function properly, you’ll need to change the PHP mode to SuPHP instead of DSO. This should be a very simple server configuration you can make via your server’s control panel.

      Some notes on SuPHP:

      SuPHP forces all PHP scripts to run as the user. If suPHP is enabled in the server:

      1. PHP scripts executes under your user/group level.
      2. Files or directories no longer need to have 777 permissions(only needs 755 permission for folders and 644 for php files). In fact, having 777 permissions on your scripts or the directories they reside in will not run and will instead cause a 500 internal server error when attempting to execute them to protect you from someone abusing your scripts.
      3. Your scripts and directories can have a maximum of 755 permissions.
      4. Files and directories also need to be owned by your user/group.
      5. Using .htaccess with php_value entries within it will cause a 500 internal server error when attempting to access the scripts. All php values should be removed from the .htaccess files to avoid the 500 internal server error. Creating a php.ini file to manipulate the php settings will solve this issue. The php.ini file is a configuration file that the server looks at to see what options have been turned on, off or set to a number different from the defaults that we have set for the server.

  6. Hello WPGirl, one question – If I install wp on root (with fantastico) will it delete anything which exist there – files or forlder or my old website?

    • Hi Karan – Fantistico is likely to overwrite all of the WordPress files in the root directory. I don’t know that it will delete everything there, but it will overwrite all the WP files. So, if you have a current WP site in the root directory, you should back up the wp-content folder and the wp-config.php file. I really don’t like Fantistico, because it leaves behind files that make your site more vulnerable to hackers and I don’t like the way it upgrades sites. I usually install WP manually rather than use Fantistico. Here’s a good blogpost from WP SecurityLock on issues with Fantistico: http://www.wpsecuritylock.com/wordpress-security-risks-using-auto-installers-like-fantastico/

Leave a Reply

Your email address will not be published. Required fields are marked *