重写规则的使用正则表达式
问题描述:
答
我需要
/start
重定向到/start/index.html
和其他一切(/任何东西)到/index.html
。什么是正确的正则表达式rewriterule呢?
你可以在根目录中的一个.htaccess文件试试这个:
Options +FollowSymlinks -MultiViews
RewriteEngine On
RewriteBase/
RewriteCond %{REQUEST_URI} !index\.html [NC]
RewriteRule ^start/(.*) /start/index.html?$1 [L,NC,QSA]
在规则,anything
作为查询传递给index.php
和QSA标志添加进来的一个时出现。
要将anything
作为路径段,请将?$1
替换为/$1
并删除QSA标志。它没用,因为任何传入的查询都会自动添加。使用[R = 301,L,NC,QSA]替换[L,NC,QSA]
答
重写条件:
RewriteRule ^start/?$ /start/index.html [R]
RewriteCond %{REQUEST_URI} !^/start/?$
RewriteRule ^([a-zA-Z0-9_-]+)/?$ /index.html [R]
请考虑有关[R]
将此链接:https://stackoverflow.com/a/15999177/2007055