I had a heck of a time getting this to work, and this is just as much for my notes as it is for the wider web world’s usage.
To use the pretty links of WordPress, I had to enable mod_rewrite in Apache. Which was actually already enabled with my default installation.
I was using virtual hosts in the /etc/httpd/conf.d directory, so I made sure that the <Directory> configuration included these lines:
AllowOverride All Order allow,deny Allow from all
Also I made sure that that virtual host itself had these options set:
Options Includes MultiViews -Indexes FollowSymLinks SymLinksIfOwnerMatch
But to my deepest chagrin, it still wasn’t working. After laying my head down on my desk and allowing the tears to flow like a mountain spring, I girded up my loins and looked again.
In Apache’s main config file, /etc/httpd/conf/httpd.conf I found an AllowOverride None line! NO! I was beat by my own laziness and ignorance again. I commented out that line, and pretty links suddenly worked.
Learn from my mistakes, Future Dewey/World at Large. Don’t let it fool you again.
Rolling out WordPress was actually the last of the administrative acts I have accomplished on this server, and it was by far the easiest of the implementations. I feel sheepish even calling it an implementation. It was almost embarrassingly easy to get it up and running. I downloaded the latest version of WordPress from the WordPress download sections into my /usr/src directory. This I did with:
After it completed its download, I untarred it, then copied it in its entirety to my apache document root directory.
tar xvf latest.tar.gz
cp -r wordpress /my/apache/documentroot/
Then, I gave apache ownership of the whole directory with:
chown -R apache: /my/apache/documentroot/wordpress
Then opening up a web browser to the WordPress index I followed the install methods.
But wait, a snag! Mysqld wasn’t working! WordPress alerted me to the fact that my PHP installation didn’t have the proper Mysql integration! Oh no! All is lost, and life is meaningless!
Except, all that was required, as I already had PHP installed was to make sure that the php-mysql package was installed. The CentOS community repos make this available as a yum install. So I went ahead an did that with:
yum install php-mysql
After getting php-mysql installed, WordPress held my hand the rest of the way, and it was up and running within seconds. It was remarkable. Bless open source web development and the heroes that keep it moving forward. Bless them one and all.
I’ve seldom blogged about anything on a regular basis with any kind of regularity or otherwise. This is in large measure just an exercise in web administration. My writing skills and ability to ENTICE and EXCITE are both rancidly rotten and ignored to the point of being rusted to complete impotent dullness.
However, I enjoy attempting new administration and the rolling out of PHP stuff. It’s absurd how easy it gets after a little while. PHP and Mysql combined has made things remarkably modular in website administration, and yet rolling out a wordpress or a wiki is always exciting to me, and somehow still gives me a sense of accomplishment, regardless of how easy the developers have made it.. I can always count on the chance of something going slightly wrong, and somehow making me feel intelligent for getting around it. Even though it is usually as something as silly as a service not running on the webserver.
I’m going to document each of my attempts for web administration, and to the best of my ability enumerate my mistakes in the hopes it will help you avoid the same pitfalls.