• After ignoring my blog for several months, A user tells me that a link is generating 500 errors (server misconfigured)
    The link is one of a group of 50, of which 8 do this.

    Each link is ‘virtual’ – not a real URL – I assume that WP is translating these some where.

    Where?
    Any insights?

Viewing 14 replies - 1 through 14 (of 14 total)
  • more info is needed. can you provide an example uri?

    Thread Starter ek_wals

    (@ek_wals)

    https://www.stayeat.com click on ‘Texas’

    Not very informative though — it just shows a [500] error.
    My host is BlueHost and I found another message about this problem with them (“Orphaned Apache processes…”)
    I have an escalation with them to try and find the problem. My suspicion is that the server has some timeout that is insufficient for a PHP program of the magnitude of WordPress. PHP appears to be a frail vessel for large programs.

    Do you have content for Texas? ( I would expect so ) What category number is Texas?

    I found it, 45. This seems to work. https://www.stayeat.com/?cat=45 It did take a little while to come up though, longer than the other pages.

    So the page comes up, but not when it converts the permalink. Could be a timeout value in apache, not sure. Could you post your .htaccess file here? It should be checked.

    Just checked https://www.stayeat.com/index.php/texas/ It also generates the 500 error. This bypasses the server’s .htaccess. hmm.

    What is your permalink structure?

    Other pages I’ve tried that worked (so far) have been single pages. I think this problem is ultimately within wordpress (perhaps a fight between the apache server and wordpress). Could it possibly only be a problem for states that bring up more than a single page?

    Just for kicks, increase the number of articles displayed. In admin area, go to Options > Reading and increase Blog Pages show at most value to something very large, like 100. Then try your texas links and report back here.

    Thread Starter ek_wals

    (@ek_wals)

    No luck on increasing posts/page.
    The permalinks are: custom- “/inn/%category%/%post_id%”
    I also have ‘category base’ set to “/category”

    I also get a page with ‘www.stayeat.com/category/texas”

    Given the extra time, perhaps the database lookup is
    exceeding some Apache timeout, which in turn convinces
    another part of Apache that an error has occurred.

    Sounds like a configuration problem at my host (BlueHost).
    It should be noted that I last knew this to work around
    the start of May, which is when the other thread mentions
    sporadic problems of the same kind on the same host.
    I wonder if the server load has increased since April?

    do you have a post called texas? as well as a category? this could be the problem. you should really use the permalinks as you’ve written them, with category before texas. i.e. stayeat.com/category/texas

    I guess you’ve custom built that list, and aren’t autogenerating it. I think you need the /category as part of the url in order to avoid conflicts.

    Thread Starter ek_wals

    (@ek_wals)

    No I don’t have a post named ‘Texas’ In fact, this problem began during a time when no posts, or other changes, were made to the site.
    The error message says ‘server misconfigured’ and after a day of effort, I will take it’s word for it.

    500 errors can result from so many different things. the fact that it works when you properly use the permalinks, and not when you don’t, is putting some of the responsibility onto wordpress. as it stands, you do have a solution. you can change the path to texas to include /category, or even just /inn/texas, as I tested that, and it works too.

    it’s possible you have conflicting rewrite rules. I would still like to see what your .htaccess file says. and do you have any other .htaccess files in your web space? these kinds of rules can also be in conf files too. if you can read those, I would poke through them as well. but I keep thinking back to the fact that /index.php/texas/ also generates the error. This by passes complete the server rewrite rules, and puts the processing of the permalink entirely within wordpress. This leaves only php as the source of the error.

    Have you looked at your access logs? If you can find the directory in the shell (do you have shell access?), do this:

    cat access_log | grep /texas

    change access_log to whatever your log file might be named. If you find an error, you can post it here.

    I’ve run some of my own tests, and I get 404’s if I try and not follow my permalink rules (by removing category from the uri). I’m a little puzzled why it sometimes works for you. I find myself wondering if you have a customized .htaccess file that isn’t what wordpress installs by default.

    In the end, your permalink rules say you need to have /inn/texas/etc. to view an individual post, and that you need /category/texas to view the category of texas. Since it works that way, I recommend you rewrite that block of links to the states to reflect what your permalinks expect.

    Thread Starter ek_wals

    (@ek_wals)

    The .htaccess in public_html is:

    RewriteOptions MaxRedirects=50
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>

    # END WordPress

    There is also a .htaccess in the parent directory ( home)

    # File modified on Thu Aug 3 16:09:48 2006 by server
    # <deactivated is not a supported htaccess directive
    # is not a supported htaccess directive
    # </deactivated>
    # File modified on Thu Jul 27 16:41:12 2006 by server
    # <deactivated is not a supported htaccess directive
    # is not a supported htaccess directive
    # </deactivated>
    # File modified on Thu Jul 27 16:29:23 2006 by server
    # <deactivated is not a supported htaccess directive
    # is not a supported htaccess directive
    # </deactivated>
    # File modified on Fri Jul 14 16:04:09 2006 by server
    # <deactivated is not a supported htaccess directive
    # is not a supported htaccess directive
    # </deactivated>
    # File modified on Fri Jul 14 04:37:07 2006 by server
    # <deactivated is not a supported htaccess directive
    # is not a supported htaccess directive
    # </deactivated>
    # File modified on Mon Jul 10 21:50:31 2006 by server
    # <deactivated is not a supported htaccess directive
    #
    # File modified on Mon Jul 10 20:30:20 2006 by server
    # <deactivated is not a supported htaccess directive
    # is not a supported htaccess directive
    # </deactivated>
    # File modified on Sun Jul 2 19:30:04 2006 by server
    # <deactivated is not a supported htaccess directive
    # is not a supported htaccess directive
    # </deactivated>

    I am ignorant about shell access or access logs.

    There is an error_log in the public_html dir. that shows only out of date errors, nothing caused by this error.

    Remember that all of this worked in April, and I have made no changes since then. As such, I dislike the idea of modifying the code.

    The contents of .thaccess in the home dir is entirely commented out. It’s not doing anything in other words.

    For the one in public_html, the first line isn’t put there by wordpress. You could try change the .htaccess slightly by commenting out that line and testing it.

    change this:

    RewriteOptions MaxRedirects=50

    to this:

    # RewriteOptions MaxRedirects=50

    You can always remove the # to restore it back to normal.

    Thread Starter ek_wals

    (@ek_wals)

    I realize the home htaccess is commented — The point is that I didn’t do it. All those comments are done by the server, (and dated to a period when I never even accessed the site!)

    I tried commenting the maxredirects (and increaing it to 150) with no effect.

    That 500 error is really being generated by the server, and really claims that the server is misconfigured. Something in my site may be exposing that misconfiguration, but it really seems to be BlueHost’s problem. I was able to find one other thread that mentioned 500 errors, and it also mentioned BlueHost. Also identical code works on 42 out of 50 states.
    My guess is that some timeout(‘s) in Apache are set wrong, and the rather slow PHP code (dealing with over a thousand categories) is tripping it.

    Conclusion – BlueHost will fix it on monday or I will move the site to another host. (ugh!)

    it’s fine to think it’s bluehost’s issue, but it’s *your* problem. ?? a 500 error doesn’t necessarily mean the server is configured wrong, it just means the server feels it can’t do something requested of it, or it doesn’t understand.

    from everything covered here so far, I don’t think it’s apache or mod rewrite. it seems to be a php issue. the most likely thing that’s happened is they’ve upgraded php recently, or changed it’s settings. but this doesn’t change the fact that you’re created url’s that don’t match your permalinks rules. it might have worked before, but what you’re doing isn’t supposed to work. in other words, you could change hosts and find the problem follows you, or gets worse.

    you can add /category to your state links. if you don’t want that, you should really change your permalink rules to reflect what you do want it to say. although I hope your host can pull some magic out of their hat, I’m not optimistic.

    One other thing you could try is to clear the permalink info that gets stored/cached in the database. It could be wrong. One way to do that is to change your permalinks to default, and then change it back. Or you can manually remove the entry from the database using phpmyadmin. The table is wp-options, and there is a field set with records of option_name “rewrite_rules” and option_value whatever. Clean the ‘whatever’ out of the option_value one. WordPress will then generate new data, and this could potentially fix your issue.

Viewing 14 replies - 1 through 14 (of 14 total)
  • The topic ‘500 errors’ is closed to new replies.