My problem is in my wordpress site only default permalinks is working.. When I change permalinks all pages become not found.. only home page is showing.

When I change permalinks to postname .htaccess content change to

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
# END WordPress

And for default it is

# BEGIN WordPress
# END WordPress

Also tried to get the status of mod_rewrite using this

in_array( 'mod_rewrite', apache_get_modules() )

It returns 1 and mod_rewrite is enabled on my server. I have gone through all the documents available in internet.. Please help me to solve this problem.. My hosting server is godaddy..

2 Answers 2


GoDaddy is unique among hosts that I've seen in that the changes you make to .htaccess files don't take place immediately. They use some caching system for them in some manner.

Turn on the permalinks and wait a day. It's worked for me in the past when I used to be hosted there.

  • Thank you for your response.. But I cant down the site for 1 day.. :( Mar 24, 2014 at 5:49
  • Blame GoDaddy, not me. Nothing we can do about it. You might try making an .htaccess file with those rules in it anyway, but not actually switching the permalinks, then waiting a day before giving it a try.
    – Otto
    Mar 25, 2014 at 9:19
  • I am not blaming you sir.. Contacting Go-daddy support.. But they not giving any solution.. :( Apr 1, 2014 at 5:11
  • You are using their Linux hosting, correct? Things like .htaccess won't work on their Windows hosting systems. Switch to the Linux systems.
    – Otto
    Apr 1, 2014 at 6:13
  • Yes. I am using their Linux hosting. Deluxe package.. Apr 1, 2014 at 9:34

We had the same issue, only the default permalink working with Apache mod-rewrite enabled.

Other sources had us tweaking the AllowOverride in the 'Directory "var/www/html"' from 'None' to 'All', this only resulted in a 500 error when anything but the default permalink was chosen.

Sometimes giving it rest and coming back to it works -- after sleeping on it overnight, we reviewed the http.conf file closely and saw this in the PidFile Section...

    PidFile run/httpd.pid

When doing a 'find / -name httpd.pid', we discovered this is NOT the correct path, so we changed it accordingly...

    PidFile /var/run/httpd/httpd.pid

Saved the file (with AllowOverride set to All as well) and restarted apache...

    service httpd restart

The default permalink was already set in WP so we chose another, saved and...

All is well with life once again...


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.