我想重写
到
whatever.php没有修复,它代表www目录中的任何php页面。
我的htaccess目前看起来像这样:
RewriteEngine on
RewriteCond %{REQUEST_URI} !hl=
RewriteRule ^(.+)$ $1?hl=EN [QSA,R=301,L]
但出于某种原因,它将每个页面的真实硬盘路径添加到www.mydomain.com,例如:
变为
我必须在这里做错事,任何想法?
答案 0 :(得分:1)
你可以试试这个:
Options +FollowSymlinks
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^/(www/[^.]+\.php)/? [NC]
RewriteRule .* %1?h1-EN [R=301,L]
永久重定向
带有或不带斜线的 http://www.mydomain.com/www/whatever.php
要:
http://www.mydomain.com/www/whatever.php?hl=EN
假设所有字符串都是固定的,whatever
除外。
对于静态映射,请将[R=301,L]
替换为[L]
从SO编辑:
RewriteEngine On
RewriteBase /
RewriteCond %{QUERY_STRING} !hl=
RewriteCond %{REQUEST_URI} ^/(www/[^.]+\.php)/? [NC]
RewriteRule .* %1?hl=EN [R=301,L]
做了这个伎俩,谢谢