当我访问网址时,我有一个域名www.jannatband.com
:
它成功回显了值asd
,原始网址如下:
http://jannatband.com/me/index.php?u=asd
上面的HTACESS代码:
# .htaccess
RewriteEngine on
RewriteRule ^[aA-zZ]+$ index.php?u=$0
但是当我尝试将同一个网址转换为
时http://me.jannatband.com/asd
使用此.htaccess
代码:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^me\.jannatband\.com$
RewriteCond %{REQUEST_URI} !^/me/
RewriteRule (.*) /me/$1
它给了我一个This webpage is not available
错误。这个.htaccess
代码出了什么问题?
PS :/me/
是public_html
中的现有目录。
答案 0 :(得分:0)
您重写规则会在您的情况下更改一次URL。但是你想让重写引擎再次处理更改过的URL。
您可以通过指定标志,即下一个标志来说明。 From the manual:
'下一个| N'(下一轮) 重新运行重写过程(从第一个重写规则开始)。这次,要匹配的URL不再是原始URL,而是上次重写规则返回的URL。这对应于Perl next命令或C中的continue命令。使用此标志重新启动重写过程 - 立即转到循环的顶部。
启用它时要小心:
RewriteRule (.*) /me/$1 [N]