开发者

Remove QUERY_STRING from URL only for /index.php

开发者 https://www.devze.com 2023-03-23 17:21 出处:网络
I would like to remove the query string from the URL using mod_rewrite (.htaccess), but only for /index.php (and not /).

I would like to remove the query string from the URL using mod_rewrite (.htaccess), but only for /index.php (and not /).

For example, http://www.example.org/index.php?foo=bar should redirect to http://www.example.org/index.php, but http://www.ex开发者_Go百科ample.org/?foo=bar should be left alone.

This is my current sutup:

RewriteCond %{QUERY_STRING} !=""
RewriteCond %{REQUEST_URI} ^/index\.php
RewriteRule ^(.*)$ /$1? [R=301,L]

It works, but not with the limitation I want (i.e. it still removes the query string even when index.php is not in the URL. I think this may have to do with REQUEST_URI realising that / is being internally redirected to /index.php, but I can't be sure.

As a side question, I would have a lot easier time working this stuff out if I could work out what value was being used REQUEST_URI, is there an easy way to log this somewhere?


You can add this lines to your httpd.conf to see what's going on

RewriteLog /path/to/log
RewriteLogLevel 5
0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号