.htaccess 重写不完整

.htaccess 重写不完整


www.mysite.com/name/subject/
我该如何重写
www.mysite.com/index.php?page=name&s=subject

现在我正在使用:

Options +FollowSymLinks
Options +Indexes
RewriteEngine on
RewriteBase /

不匹配内部子请求:
RewriteCond %{ENV:REDIRECT_STATUS} ^$

匹配查询字符串变量:
RewriteCond %{QUERY_STRING} ^(.*&)?page=(name1|name2)(&.*)?$ [NC]

匹配文件并重定向:
RewriteRule ^(index\.php)?$ /%2/? [NC,R=301,L]
RewriteRule ^(name1|name2)\/$ /index.php?page=$1 [QSA,L]

它确实有效,但只到www.mysite.com/name1/

答案1

RewriteConds 适用于下一个 RewriteRule。

此外,除非别无选择,否则不要使用 .htaccess;只要您可以访问 httpd.conf,就应该将重写内容放在那里。

相关内容