我有一个页面
http://www.mydomain.com/test.php?A=a/b/c.png
在 .htacess 上,我有一个代码
RewriteEngine On
RewriteRule ^A/([^/]*)$ /test.php?A=$1 [L]
如果我访问
http://www.mydomail.com/A/a/b/c.png
它不会让我查看文件,但此重写规则正在使用分隔符"-"
RewriteRule ^A-([^-]*)$ /test.php?A=$1 [L]
访问网址
http://www.mydomain.com/A-a/b/c.png
它有效,但我不想使用分隔符"-"我想使用分隔符"/"
它不起作用,因为你的正则表达式是错误的。您的 URI 中包含/,并且[^/]
与除斜杠以外的所有内容匹配。
将您的规则更改为此规则。
RewriteRule ^A/([^.]*)$ /test.php?A=$1 [L,QSA]
或者这个:
RewriteRule ^A/(.+?)/?$ /test.php?A=$1 [L,QSA]
很简单
原始网址:
http://www.mydomain.com/test.php?A=a/b/c.png
重写的网址:
http://www.mydomain.com/A/a/b/c.png
使用下面的htaccess代码
RewriteEngine On
RewriteRule ^A/([^/]*)$ /test.php?A=$1 [L]
如果您想使用任何前缀,只需使用以下代码
RewriteEngine On
RewriteRule ^([^/]*)'.php$ /test.php?A=$1 [L]
-------------------------------------^ 根据您的需要使用任何内容
如果你想像'mydomain.com/images/a/b/c.png'
RewriteEngine On
RewriteRule ^([^/]*)$ /test.php?A=$1 [L]
---------------------^//从这里删除了 A/