Hosting Sites

You can rent a site that will host your instance of WordPress, as
described here:

http://wordpress.org/hosting/

The sites listed at the above link are not your only options. Many sites
providing web hosting for third parties. If you build a site on one of
those platforms, you may well have the option of installing WordPress.

Installation on Linux

There are various places on the web where you can find
instructions on how
to install Wordpress on Linux. I offer my own version of the primarily
automated install below.

Install Linux

The simplest way to get started is to install Ubuntu Desktop. Though I
don't recommend it for beginners, you can choose the Ubuntu Server
instead. During the install of the server, you will have a chance to
install
the
LAMP
stack. This means you will have Apache2, MySQL and PHP/Python/Perl
installed by default. If you already have Ubuntu up and running, or if
you used the desktop version of Ubuntu, then you need to add LAMP
yourself. Here is a description of how to proceed:

NOTE: If you are installing on server that has a known public DNS, then
you should put that public DNS in the place of localhost. For instance,
if I were creating this file for Elvenware, the last bit would look like
this .../setup-mysql -n wordpress elvenware.com. If you are working on
EC2, and you don't have domain name of your own, then you might write
something like this .../setup-mysql -n wordpress
ec2-16-67-000-00.compute-1.amazonaws.com, where the DNS is associated
with an elastic IP.

Due to a bug in the WordPress install script, you may get an unfound error on this
command:

The problem is that sometimes the WordPress install script does not decompress
the setup-mysql script. To fix the problem, you need to unzip it yourself. In
particular, you can type the following command:

The problem is that sometimes the WordPress install script does not decompress
the setup-mysql script. To fix the problem, you need to unzip it yourself. In
particular, you can type the following command:

gunzip /usr/share/doc/wordpress/examples/setup-mysql.gz

Altenatively:

cd /user/shar/doc/wordpress/examples
gunzip setup-mysql.gz

When you are done, try rerunning the command which gave the error. it should
work.

I found ec2-23-23-170-11.compute-1.amazonaws.com in the elastic ip
page of the EC2 console. It is also available on the Instances page at
the bottom, after you place a check mark before your running instance.
It may be slightly easier to block copy the address from the Instances
page.

Figure 0X: When installing WordPress on AWS, get the long form of public
DNS for the Elastic IP. (Click to expand.)

Sometimes it is nice not to run the automatic install shown above, but
instead to get one's hands dirty and handle at least parts of the
install yourself. This gives you more control, and a better
understanding, of how WordPress works.

Understanding wp-config.php

Perhaps no part of the WordPress install is more important than properly
configuring wp-config.php. This file is stored in the root of your
WordPress site. This file is set up for you automatically during the
install; nevertheless, it is important that you understand at least the
core portions of this file. In particular, you should open up your copy
of this file and find this section:

Here is where you define your database name, your user name, your
password, and your host site. Where I have typed in userName, you
should type in your user name, such as Lisa, Jerry or Miguel. You should
also type in your custom password. It is typical, but by no means
mandatory, to create a database named wordpress and to host your first
site on your localhost.

Moving WordPress

My web hosts does not give me root access to my site, so I was at first
unclear how to set up this site. I ended up setting it up on Windows,
using the Microsoft Web Platform Installer, which automated the entire
process. I then simply copied the site over to Elvenware using SFTP. I
set up a MySQL database on Elvenware, edited the wp-config.php file,
then browsed to my admin site for the blog. It asked me to set up the
site, which meant in this case that it would create the necessary tables
in the database for me. I had to fill in a few simple fields, and then I
was up and running.

After I moved my WordPress site from a local machine to my web host, I
found I had put it in the wrong folder. The problem is that the folder I
placed WordPress in becomes, by default, part of the URL to my blog:

It turns out that this change was fairly easy to make using a tool
called PhpMyAdmin. That tool automated the process for me, but it did
display the actual SQL created to perform the update, which looks like
this:

Having completed this task, however, I found I was not quite done yet. I
could browse my site and use wp-admin, but some of the minor features,
such as comments, were not working correctly, in that they kept trying
to access .../charlie/wordpress rather than .../charlie/elvenblog. To
fix this, signed into to wp-admin, and went to the Settings page. On
that page I changed the Site Address, so that both the WordPress
address and Site Address read:

http://www.elvenware.com/charlie/elvenblog.

After making that change, comments on my blog posts started working
again. (It is posssible that I could also have simply left the Site
Address field blank, but I have not yet tried that experiment.)

Here is a link that can help you understand more about this subject, and
how to handle some special cases I don't cover here.

http://codex.wordpress.org/Moving_WordPress

No CSS

If you have been accessing a site through localhost, and then you try to access it from another machine, you may see the text for your site but not the CSS. To fix this:

Go to Settings (General Settings)

Find the WordPress Address (URL) and Site Address (URL)

Set them both to the proper address for your site.

For instance, change them from localhost to an IP address

Or from localhost to a domain name

Be sure to include the http part, and don't put a slash at the end.

Editing with WordPress

There are various bits of markup you can use to help you edit the
documents you create.