– Make sure mod_rewrite is enabled – you can confirm it by viewing a phpinfo() page and looking under the apache2handlers in the “Loaded Modules” section for mod_rewrite.
To enable it from the command line:
a2enmod rewrite
then restart apache
service apache2 restart (I think… yikes)
– Make sure AllowOverride All is properly set in your virtual host container for the site.
– Make sure the .htaccess file is writable to WordPress when you click the save button on the permalinks page. If it isn’t, you ‘ll get a message similar to “if this file were writable…”
FYI, phpinfo() will only list the Apache stuff if it’s configured as a module ( mod_php5 in my local Windows 7 PC).
At my webhost, PHP is configured as CGI/FastCGI in Linux so it doesn’t show any of that information.
@markrh
Thanks! I made a knee-jerk assumption that it was probably a run of the mill, OOTB local setup. I probably shouldn’t assume such things. 🙂
If the Server API section reflects CGI, is there a quick way @fuzzytoothpaste can determine if mod_rewrite is functioning if there’s no indication that it’s functioning from inside the hosts control panel info?
Thank you guys so much. I ran the command to enable the rewrite module (I didn’t even bother to check if the module was already running; I ran the command anyway), and it still didn’t work. So, I opened all of my Apache configuration files, changed every instance of AllowOverride None to AllowOverride All, and now it works flawlessly. This is now resolved.