我用过的.htacess规则 -
RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^/\.]+)/?$ profile.php?user=$1 [L]
RewriteRule ^(.*)$ profile.php?user=$1 [QSA,NE]
正确的例子 -
http://mydomain.com/http://fatalweb.com/articles/8/definitions-for-htaccess-regex-character
传递给$ 1的值是 - http://fatalweb.com/articles/8/definitions-for-htaccess-regex-character
http://mydomain.com/https://www.google.com/search?q=_get&ie=utf-8&oe=utf-8&aq=t
传递给$ 1的值是 - https:/www.google.com/search
如何确保整个网址https://www.google.com/search?q=_get&ie=utf-8&oe=utf-8&aq=t
以及所有查询参数都传递到$ 1
答案 0 :(得分:0)
在你的问题中,是https:/www.google.com/search
吗? <{1}}缺失后有一个斜杠。
在使用空文件处理程序之前,您需要至少指定一个规则。不知道为什么,但这就是它的工作方式。请查看您的用例:
https:/
第RewriteEngine On
RewriteRule ^([^/]*)\.dummy$ ./?dummy=$1&%{QUERY_STRING} [L]
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteRule ^(.*)$ ./%{QUERY_STRING}
行是假的。检查并查看这是否适合您! :)