我正在尝试让我的 .htaccess 文件正常工作。但它似乎有几个问题:
RewriteEngine on
RewriteRule ^css/ - [L]
RewriteRule ^img/ - [L]
RewriteRule ^js/ - [L]
RewriteCond %{HTTP_HOST} ^www\.example\.ch$ [NC]
RewriteRule ^(.*)$ http://example.ch/$1 [R=301,L]
RewriteRule ^(dir1/dir2)([a-zA-Z0-9\/\-\_,]+)$ index.php?page=$1&id=$2 [L]
RewriteRule ^(dir1/dir2)([a-zA-Z0-9\/\-\_,]+)$ index.php?page=$1&id=$2 [L]
RewriteRule ^(dir1)([a-zA-Z0-9\/\-\_,]+)$ index.php?page=$1&id=$2 [L]
RewriteRule ^([a-zA-Z0-9\/\-\_,]+)$ index.php?page=$1 [L]
1)在我的 .htaccess 中,点不起作用。当我这样写最后一条规则时:
RewriteRule ^(.*)$ index.php?page=$1 [L]
我只是得到“主页”。如果我 var_dump($_GET) 有键'page',它应该是,但它的值是'index.php'。怎么没写地址?
2) 本网站有一个旧版本,其 URL 为 www.example.ch/page.php。我想将旧的 .php 网站重定向到新网站,因此点击 google 中旧链接的访问者不会收到 404 错误。当我输入 example.ch/page.php 时,使用上面的 .htaccess 我被重定向到类似的东西:
http://example.ch/home/httpd/vhosts/example.ch/httpdocs/page
这是什么原因?
谢谢