0

我想从以下内容重写我的 URL:

http://domain.com/edit.php?proname=abc

至:

http://domain.com/abc

这是我当前在 .htaccess 中的重写代码:

RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([a-zA-Z0-9-]+)$ edit.php?proname=$1 [L,QSA]
RewriteRule ^([a-zA-Z0-9-]+)/$ edit.php?proname=$1 [L,QSA]

代码“有点”有效。问题是它用相同的变量重写了所有的“编辑”URL。例如,我有一个包含三个项目的表,每个项目都有一个“编辑”按钮。当我单击项目 2 或 3 的“编辑”按钮时,它会将我引至项目 1 的编辑页面。所有编辑链接将我引向第一个项目的编辑页面。

什么可能导致它?

已解决:原来 PHP 脚本中存在逻辑错误。谢谢你,奥拉夫!

4

1 回答 1

1

htaccess 可以简化,但到目前为止看起来是正确的。问题一定出在edit.php脚本上。

注意:您可以将两条规则简化为一条规则

RewriteRule ^([a-zA-Z0-9-]+)/?$ edit.php?proname=$1 [L,QSA]

但这并不能解决您的问题。

于 2013-04-19T06:28:21.830 回答