【发布时间】:2013-07-25 15:02:08
【问题描述】:
嗨,基本上我遇到了一个最令人沮丧的问题,我被带到帮助修复一个网站(我没有写它,这增加了复杂性)。在 .htaccess 文件中,旧公司使用重写规则使 URL 看起来更清晰。有道理,看起来像这样:
RewriteRule ^products/([A-Za-z0-9-]+)/([A-Za-z0-9-]+)$ productDetail.php?cid=$1&pid=$2
RewriteRule ^products/([A-Za-z0-9-]+)$ category.php?cid=$1
RewriteRule ^page/([A-Za-z0-9-]+)$ page.php?ptitle=$1
RewriteRule ^basket$ basket.php
RewriteRule ^basket/$ basket.php
#RewriteRule ^checkout/$ checkout.php
#RewriteRule ^checkout$ checkout.php
#RewriteRule ^checkout/confirm/$ confirm.php
#RewriteRule ^checkout/confirm$ confirm.php
工作正常,如果我更改前几条规则中的任何内容,这些更改都会反映在网站上。最后四个不是这样。这些规则不会改变。无论我做什么,如果我将它们设为 asdljkhfaksd.php,如果我将它们完全注释掉(就像我目前所做的那样),或者如果我删除整个 .htaccess 文件(这确实违反了所有其他规则,所以服务器是肯定使用该文件)。它上面的目录没有任何冲突的规则。有什么建议可以在其他地方设置吗?还是我疯了?
【问题讨论】:
标签: apache .htaccess mod-rewrite