.htaccess 如何修复此重写URL规则?
基本上需要转换 无论是否使用www,example.com/[anycharacter] 进入 无论是否使用www,example.com/cgi-bin/new disk.cgi/dir/smooth/[anycharacter] 另外.htaccess 如何修复此重写URL规则?,.htaccess,mod-rewrite,.htaccess,Mod Rewrite,基本上需要转换 无论是否使用www,example.com/[anycharacter] 进入 无论是否使用www,example.com/cgi-bin/new disk.cgi/dir/smooth/[anycharacter] 另外 我想将所有www.example.com重定向到example.com作为您答案的一部分,我相信您可以以此作为示例。。希望您使用一个测试域: RewriteCond %{HTTP_HOST} ^www\.example\.com [NC] RewriteR
我想将所有www.example.com重定向到example.com作为您答案的一部分,我相信您可以以此作为示例。。希望您使用一个测试域:
RewriteCond %{HTTP_HOST} ^www\.example\.com [NC]
RewriteRule ^/(.*) http://example.com/$1 [L,R=301]
可能需要添加一个
(.*)
,并将其作为另一部分的可选部分。这应该适用于您:
RewriteEngine On
RewriteCond %{HTTP_HOST} ^www\.example\.com$ [NC]
RewriteRule ^(.*)$ http://example.com/$1 [R=301,L]
RewriteCond %{REQUEST_FILENAME} !cgi-bin/new-disk.cgi/dir/smooth
RewriteRule ^(.*)$ /cgi-bin/new-disk.cgi/dir/smooth/$1 [L]
对于前两行,它检查URL中是否有www
。如果是,请将其跳转到非www版本
注意最后一行的感叹号(!
)。这是一个not运算符,在本测试中,正在检查当前请求的文件是否不是最终重写文件,在这种情况下:
cgi-bin/new-disk.cgi/dir/smooth
如果这是真的,请将其分流到您在最后一行中指出的实际重写脚本
字符“$1”引用同一行上第一组括号标记的第一个捕获组