我试图重写一个网址,但有些东西不能正常工作,我得到按摩
未找到 在此服务器上找不到请求的URL /1/1.html。
这就是我在.htaccess中所拥有的
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^/([^/]*)/([^/]*)\.html$ /view.php?id=$1&name=$2 [L]
这是此案例的href
链接
href="/'.$row['id'].'/'.$row['name'].'.html"
知道为什么会这样吗?
答案 0 :(得分:2)
您必须删除规则中的前导斜杠
RewriteRule ^([^/]+)/([^/]+)\.html$ /view.php?id=$1&name=$2 [L]
只有在直接在httpd.conf
而不是.htaccess
文件中编写规则时,才需要在规则中使用前导斜杠。
如果我没有犯错,你还需要它Apache 2.4