WordPress, Godaddy, and Permalinks

If you do a Google search on the subject, you find that people have complaints about how GoDaddy hosting works with WordPress’ permalinks function, many of whom claim one thing or another about how this tool works (or doesn’t work). But I’d like to clear the air on the misconceptions. So, first let me explain some of the misconceptions surrounding GoDaddy and Worpress permalinks, then explain how you can get permalinks working on your Godaddy hosted WordPress blog.

Misconceptions

1. The mod_rewrite function doesn’t work with GoDaddy economy hosting.

This is simply false. My blog (zacvineyard.com/blog) is hosted using GoDaddy economy hosting, and I don’t have a problem using the mod_rewrite function. Dan at idano.net may have been mislead by a GoDaddy service represenative. You do not need to upgrade your account to use mod_rewrite with Godaddy.

2. I have to build my own .htaccess file and upload it to my server.

WordPress automatically builds you a .htaccess file to use with mod_rewrite. As long as WordPress has write access to your blog’s install folder, you should be fine.

3. Mod_rewrite will not work with GoDaddy’s current configuration of PHP.

Again, this is false. WordPress is built using PHP, and again, I am using the mod-rewrite functions just fine on a GoDaddy economy hosted site.

How to Fix the Problem

All you need to fix this problem is patience. Every hour (at the top of the hour), GoDaddy refreshes .htaccess file configurations on their servers. After you select the appropriate Permalink structure you’d like your blog to have, you need to wait for GoDaddy’s servers to refresh the .htaccess file configuration. Once this happens, your permalinks (modifed URLS) should be working perfectly.


Comments

  1. Scott Offord said on December 17, 2008

    Zac, Thanks for summarizing this info for us. I have had to exercise patience on my occasions when dealing with WordPress and the Godaddy Economy Package. Scott

  2. carlnunes said on February 11, 2009

    Yep, godaddy econo hosting. Permalinks not working.

    I reset permalinks in WP Admin, not working.

    Then waited until two minutes after, the top of the hour, permalinks now working.

    Thank you,
    Carl

  3. Charles said on February 12, 2009

    Okay.. 651pm now… lets give it a whirl!

  4. Charles said on February 12, 2009

    Worked like a charm

  5. Kyra said on February 18, 2009

    It seems to have half worked for me. It worked on some pages, but not on others. And, oddly, a header image is missing from all. Any ideas?

  6. Godaddy Economy Hosting, WordPress, & Permalinks | Vivid Digital Technologies said on February 18, 2009

    [...] quick Google search brought me to Zac Vineyard’s Blog, which provided the exact answer I was looking for.  With the Godaddy Economy Hosting, the [...]

  7. Alicia said on February 18, 2009

    Hi Zac,

    My name is Alicia and I work with the GoDaddy.com hosting team. I just came across your article and wanted to say thanks for such an informative post!

    Kindest regards,

    Alicia R.
    Go Daddy Hosting

  8. Zac said on February 19, 2009

    @ Kyra

    Your .htaccess file could be trying to redirect URLs that point to the directory where you host your header image. Did you get it figured out?

  9. Jesse said on February 21, 2009

    Patience? what’s that? I’ve set up the permalinks, and now I just have to wait I guess to see if my broken links become unbroken.

  10. Zac said on February 21, 2009

    @Jesse

    Technically, your links aren’t broken. They just aren’t being redirected properly. As soon as Go Daddy’s server recognizes your .htaccess file (the file giving the server redirect directives), then your links will work.

  11. James Blackburn said on March 3, 2009

    Inside of Go daddy I was completely missing the .htaccess file. I made a file and saved it as .htaccess (.txt) and I put ONLY this code in there

    RewriteEngine On
    RewriteCond %{HTTP_HOST} ^personalgrowthpages/blog\.com [nc]
    RewriteRule (.*) http://www.personalgrowthpages.com/blog$1 [R=301,L]

    Am I supposed to have anything else in that file besides this? Its top of the hour 4 PM and I did this at 3:50 pm, and still no change?

    When I click a category it brings me to an error page. Thanks for insight.

  12. Zac said on March 4, 2009

    @ James

    Time and time again I’ve had no problem just waiting for the servers to refresh, and each time my .htaccess files work. Are you sure your code you added to your .htaccess is correct? Also, what type of error is being produced?

    The .htaccess file I have for my WordPress install is much different that the code you provided.

    Here is what mine looks like (which is pretty standard.)

    # BEGIN WordPress

    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]

    # END WordPress

    If you installed WordPress to a sub-directory on your site (such as /blog), your .htaccess file will need to look more like this:

    # BEGIN WordPress

    RewriteEngine On
    RewriteBase /blog/
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /blog/index.php [L]

    # END WordPress

    Also, if you installed WordPress to a sub-directory, make sure that your .htaccess file is in that directory.

  13. April said on March 25, 2009

    THANK YOU for your smarts,wisdom, and taking the time to write this post. I changed my permalinks (on Go-daddy) and simply left them over night. I woke up this morning to check my site and bam I have working permalinks! It worked like a charm!

    You saved me a ton of agony. I thank you for help! :)

  14. Willow said on March 30, 2009

    Thank you so much! This has saved me untold time and effort. I really can’t thank you enough!

  15. Audrey said on April 2, 2009

    I was working on a page for a client hosted on godaddy, and freaked out when I couldn’t get the permalinks to change. I found your article and decided to be patient. I refreshed the page at 12:58, links weren’t working – at 1:00 on the dot they were!

    Thanks so much!

  16. Dave Faloon said on April 3, 2009

    Thank you for posting this!!! I thought I was going crazy.

  17. Dan said on April 4, 2009

    Thanks for posting this information. I am, unfortunately, still having no success in getting Permalinks to work. I have tried what, I believe, are all the possible variations of file location and .htaccess data, waiting each time for the top of the hour to pass, but without success. I continue to get the ‘page not found’ page when I

    I am using a Custom Structure of /%year%/%monthnum%/%day%/%category%/%postname%. I have my blog appear at the root of my site (not under /blog like yours). WordPress is loaded in the /wordpress subdirectory under by GoDaddy Windows-hosted site. My index.php resides only at the root and contains the following:

    My latest attempt has the following in my .htaccess file which I only have in the /wordpress directory (not the root):
    # BEGIN WordPress

    RewriteEngine On
    RewriteBase /wordpress/
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /wordpress/index.php [L]

    # END WordPress

    I know it must be something obvious so I am hoping you can quickly spot what I am doing wrong.

    Thanks for your help.

  18. Dan said on April 5, 2009

    After some research on the RewriteRule directive and htaccess and being able to get to my pages by changing the url with suffix /index.php after the site name, I understand it much better and have the done the following (but also without success).

    My latest attempt has the following in my .htaccess file which I only have in the root directory:
    # BEGIN WordPress

    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]

    # END WordPress

    My understanding is this will change any file being requested from the root directory (where the .htaccess is) to one prefixed with /index.php so xxx.com/2009/04/05/stuff/my-post/ actually serves up xxx.com/index.php/2009/04/05/stuff/my-post/

    Hopefully I am getting closer.

  19. Valentine said on April 8, 2009

    Extraordinarity!

  20. Joel MCLaughlin said on April 17, 2009

    Great! Thanks for the post!

  21. Zac said on April 19, 2009

    @Dan

    I would try removing the .htaccess in your root folder and adding the following code to a .htaccess in your /wordpress directory. The root .htaccess file’s directives could be conflicting or over-writing with the other .htaccess. The .htaccess file of a parent directory will effect all child directories.

    # BEGIN WordPress

    RewriteEngine On
    RewriteBase /wordpress/
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /wordpress/index.php [L]

    # END WordPress

  22. Jay said on April 27, 2009

    i’ve been waiting for two days and half now… is that normal? i contacted the godaddy support team but they “are unable to support third party application issues” and “the inner functionality of this program”… i’m gonna wait a bit more, but then, i don’t know what to do :-/

  23. Zac said on April 28, 2009

    Hi Jay,
    Are you using Window’s IIS hosting or are you hosted on an Apache server? Using .htaccess is not supported outside the Apache environment. As far as I know, GoDaddy offers both types of hosting.

  24. Jay said on May 1, 2009

    Hey,

    I just switched from Windows Hosting to Linux Hosting and everything is fine now… I had issues with the permalinks, contact form and with setting permissions for the xml sitemap plugin… now everything is in order! can’t believe I’ve struggled for about two weeks with these…

    I think GoDaddy should mention those things. That would probably save them (and us, i mean me) some time!

    Thanks for your help anyway!

  25. Zac said on May 1, 2009

    Hi Jay,

    I’m glad that worked!

  26. Mary said on June 24, 2009

    Hey there, I discovered your site a little while ago and have been reading through all the info slowly. I thought would post my comment and just say hi there & let you know I really enjoy your site so far. Will definately be stopping by to read more when I have a bit more time !

    Thanks,
    Mary

  27. Matt said on August 28, 2009

    Fixing permalinks on WP using GoDaddy host.

    I’ve spent ages reading posts on this and no one really gives the complete info. For one thing, where is the .htaaccess file??? Not in my FileZilla FTP program and I couldn’t find it on GoDaddy host site either.

    I changed my permalink settings and 24 hours later still nothing had changed.

    SUCCESS!
    What finally worked for me was taking the advice of one persons comment to go godaddy host centre and under “Settings” and then “404 Error Behaviour” I selected “Use Homepage” instead of “Use GoDaddy custom page”. Worked right away after that.

    Hope that solves your problem too

  28. Gerald Frederick said on September 23, 2009

    This is why I love blogs. Wouldn’t have know this otherwise.

  29. barry said on September 29, 2009

    I’m really glad to have read this post.

    Wish I’d read it about 5 bleeping hours ago!

    Thanks for posting this… eventually I found the good info you put on here. Thanks for posting.

  30. Dtech said on October 6, 2009

    I have several websites hosted at Godaddy and I am pretty much satisfied with this domain name registrar. It is also very easy to get coupon codes for Godaddy.

  31. Ipstenu said on October 15, 2009

    I referenced this post in the WP forums recently when some folks had the same problem.

    GoDaddy responded:

    Just so everyone knows, our servers are set to no longer use .htaccess caching. These files are now picked up immediately. We’re taking a look at ajtatum’s specific server and will correct any issues we may find.

  32. Alicia said on October 15, 2009

    Zac,

    Just wanted to post back and let everyone know that our servers no longer use .htaccess caching. There’s no need to wait because these files are now recognized immediately.

    Regards,

    Alicia R.
    Go Daddy Hosting

  33. Moose said on December 1, 2009

    This is a helpful post! I switched to custom permalinks under Settings>Permalinks in the WordPress admin screen, and everything seemed to be fine right away. However I then had to change the slugs on a couple of pages after enabling permalinks and now I get the error. It’s been about 2-3 hours with no change.

    Is there something else I need to do in this case to get the updates to be recognized? I don’t see an .htaccess file either in my file manager or in the WordPress admin editor so haven’t been able to check or change it.
    Any help is appreciated! Thank you.

  34. Zac said on December 4, 2009

    Hi Moose, GoDaddy just recently quit caching their .htaccess files, so you don’t have to wait any longer. Sometimes a .htaccess file is a hidden file, and it can take changing some settings in your FTP client to make it visible. But if you don’t have one, then you will need to crate a .htaccess file. But if the permalinks work, then, in my experience, you have a .htaccess file and it is being recognized by the host provider. How are you changing the slugs? They all need to look similar. Can you give an example?

  35. Godaddy, Wordpress & broken permalinks said on January 8, 2010

    [...] any case, it was from a simple call to them at 2:00 in the morning and a post on this blog that I found out this little fact about one of Godaddy’s WordPress issues. Needless to say, [...]

  36. MuyaMan said on June 21, 2010

    God bless you. I have spent so much time on this, when the solution was just being able to not anything for some time…

  37. Jason said on July 14, 2010

    I am having this problem on the GoDaddy linux plan and it appears by .htaccess is set correctly. I have WordPress installed into /blog and here is my .htaccess

    # BEGIN WordPress
    RewriteEngine On
    RewriteBase /blog/
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ./blog/index.php [L]
    # END WordPress

    I have tried waiting until after the top of the hour even though it appears that doesn’t matter anymore but still no luck. The blog loads and I get Error 404 – Not Found where the post should be. If I turn off permalinks it works fine so I know they are the issue but need to determine the root cause so I can resolve it. Any ideas?

  38. Zac said on July 14, 2010

    Hi Jason,

    As far as I can tell, there isn;t much difference between the .htaccess file I have and the code you provided, except that a space exists between “RerwriteRule .” and “/blog/index.php [L]” in my .htaccess file. Here is the exact. htaccess I am running. You may also need the line “RewriteRule ^index\.php$ – [L]” in your file. Give it a try and see if it works.

    RewriteEngine On
    RewriteBase /blog/
    RewriteRule ^index\.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /blog/index.php [L]

  39. CI web project configuration & prep « Yidea's Blog said on August 22, 2010

    [...] after uploading your CI website ,you need to wait at least 1 hour for Godaddy to refresh your site’s .htaccess file does godaddy ecnomic hosting support mod_rewrite , CI and WordPress? [...]

  40. CI web project configuration & prep « Yi Cao on HCI said on September 9, 2010

    [...] after uploading your CI website ,you need to wait at least 1 hour for Godaddy to refresh your site’s .htaccess file does godaddy ecnomic hosting support mod_rewrite , CI and WordPress? [...]

  41. Caroline said on September 14, 2010

    Hi Zac,

    Thanks for sharing your knowledge on this topic. I was wondering if you might be able to shed some light on my situation.

    I’ve been trying to get my permalinks to work for the last 2 days to no avail. I am using GoDaddy as a host, with a Linux server. My blog is within a subdirectory, and I have tried the code in your last entry. I’ve changed the permissions to 777 and waited hours. The server consistently returns a 500 error when I visit the blog.

    I have removed the .htaccess file from the blog directory, and find that when I click on a blog entry, the permalink urls appear in the url address bar, though the server returns a 404 error page.

    After I select the permalink option within WordPress, WordPress says to copy and paste the following:

    RewriteEngine On
    RewriteBase /blog/
    RewriteRule ^index\.php$ – [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /blog/index.php [L]

    Should I be including the and tags in the .htaccess file? At this time I am trying out an .htaccess file without this tags.

    I’ve tried letting GoDaddy create the .htaccess file as well, to no avail.

    I also spoke with a GoDaddy rep, and he said everything should be working. However, he was not able to check the contents of the .htaccess file.

    Do you notice anything that is off?

    I appreciate your help greatly! I’m not sure what else to do that this point.

    Many thanks,
    C

  42. Caroline said on September 15, 2010

    Hi Zac,

    As suggested by one of your readers and the link below, I added index.php as a suffix to the permalink. It finally worked!

    http://wordpress.org/support/topic/permalinks-not-working-23

    Cheers,
    C

  43. Zac said on September 15, 2010

    I’m glad it worked! Let me know if you hit other troubles.

  44. Godaddy Installaton Tips | deepinphp.com said on March 16, 2011

    [...] Posted on March 16, 2011 by News Just a quick note: GoDaddy no longer caches their .htaccess files. Read the comments here: http://zacvineyard.com/blog/2008/10/24/wordpress-godaddy-and-permalinks/comment-page-1/#comment-832 [...]

  45. TIBa said on April 10, 2011

    Can someone please tell why I keep getting this message for two of my wordpress/site’s pages?

    Message: The page cannot be displayed because an internal server error has occurred.

    Godday won’t allow wordpress to write the “Pretty” permanlinks into the .htaccess file.

    Any help will be appreciated.

  46. Zac said on April 10, 2011

    You should be able to manually build a htaccess file if WordPress isn’t building one for you automatically. Are you missing the htaccess file all together?

  47. TIBa said on April 11, 2011

    Hi Zac,
    Thanks for your help. Problem solved!

  48. Louis said on May 27, 2011

    Hi Zac !

    I have setup WPMU on root hosting godaddy, now I want to set up single site on directory, everything may be work.But permalinks have problem . When I use default permalink, It work. When I use permalink like %postname%, it alway redirect to Main Site on root.

    Follow you i must waiting to htaccess change on server,I will waiting, I have try many way but didn’t work.

    Thanks for suggest !
    Louis

Add Your Comment