我正在一个网站上工作,我在其中为htaccess编写代码,但我想要做的事情并没有发生。我有网址:
http://www.example.com/demo.php?id=234&title=ask%20me%20a%20question
我使用htaccess转换为以下网址:
http://www.example.com/234/ask%20me%a%question
htaccess代码:
Options +FollowSymLinks
RewriteEngine on
RewriteRule ^([0-9]{4})/([a-z]+)/$ demo.php?url=$1&url2=$2
因此。转换问题url是在子目录中搜索相关文件而不是服务器根,即;的public_html。我想知道这个问题怎么解决。 Plz帮助我。感谢。
答案 0 :(得分:1)
您的请求中的第二个参数要求包含a-z
以外的字符,但您将其限制为a-z
。
此外,您在URI中请求234
,但在第一个参数中检查4个数字。
因此,请将规则更改为以下内容:
RewriteRule ^([0-9]{3,4})/([^/]+)/?$ demo.php?url=$1&url2=$2 [L]
更改
([0-9]+)
。/
以外的所有字符。/?
L
标记以停止重写(在添加其他规则时始终有效)。