World Wise News


Nginx Proxying Apache 2.4 “Pretty Link” Request URI Problem

We recently tried to upgrade to Apache 2.4 on our Linux box which was working great with the latest Nginx and Apache 2.2.

Nginx Logo

However, Apache 2.4 refuses to pass the REQUEST_URI parameter properly

REQUEST_URI is essential for rewrite rules, also known as “Pretty Links” such as “/oddities/nginx-proxying-apache-2-4-pretty-link-request-uri-problem-2879/” instead of “/index.php?p=2879” to work properly. CMS systems such as WordPress depend on it heavily

However, once we upgraded to Apache 2.4, Apache 2.4 did not pass the REQUEST_URI variables to the PHP scripts properly.

On dumping the $_SERVER variables, no where is the real URI found. $_SERVER[‘REQUEST_URL’] states only the actual PHP file (“/index.php”) and not the actual Request URI.

This caused WordPress 3.8 to do a infinite redirect loop as we were using Pretty Links. The /wp-admin section works properly, as no pretty links are in effect at that section

IP addresses are also not being passed properly. We maanged to fix the IP address problem with mod_remoteip. Then we discover that the server-status page does not show the passed IP addresses. This is tolerable

However, the REQUEST_URI major issue causes inaccessible websites. Hence we had to roll back to Apache 2.2.

Do you have any solution?

This entry was posted in oddities and tagged . Bookmark the permalink.

Leave a Reply

Your email address will not be published. Required fields are marked *

© 2011 - 2017 World Wise News.