首页 文章

Apache中的URL重写不适合我

提问于
浏览
-1

我正在使用WAMP并在'http:// localhost / snap2 / html'文件夹中创建了一个网站 . 我正在尝试执行以下重写规则,但这对我不起作用 .

服务器给我一个错误如下:

在此服务器上找不到请求的URL /snap2/html/browsed.html .

我的.htaccess文件位于html文件夹中,其结构如下:

`RewriteEngine On

RewriteRule ^ decision /([0-9])$ /snap2/html/decision.php?PanelID = $ 1`

网站的结构类似'www / snap2 / html

事实上,我正在尝试重写以下网址

http://localhost/snap2/html/decision.php?PanelID=20

在...

http://localhost/snap2/html/decision/20

另外,选项FollowSymLinks给了我一个错误500因此,我评论过它 .

任何帮助都会非常感激 .

3 回答

  • 0

    试试这个:

    RewriteEngine On
    
    RewriteRule RewriteRule ^snap2/html/decision/([0-9]+)$ /snap2/html/decision.php?PanelID=$1
    

    但我想这不是你想要的 . 但也许你会看到你错在哪里 .

  • 0

    正则表达式中的符号 ^ 表示后面的字符串应位于URL的开头 . 因此您必须包含整个路径,有关更多示例,请参阅htaccess RewriteEngine

  • 0

    你写两次 RewriteRule . 尝试

    RewriteRule decision/([0-9]+)$ /snap2/html/decision.php?PanelID=$1 [L, QSA]
    

    要么

    RewriteRule snap2/html/decision/([0-9]+)$ /snap2/html/decision.php?PanelID=$1 [L, QSA]
    

相关问题