1

我的 .htaccess 中有一条规则

RewriteRule ^([a-zA-Z0-9-_]+)$ listing-search.php?profile=$1 [QSA,L]
RewriteCond %{REQUEST_FILENAME}\.php -f

它基本上在域 (http://mysite.com/19KAREN) 之后查找配置文件名称并提取配置文件详细信息。我尝试使用可用的重写模块将其转换为 IIS7 重写,并且在大多数情况下它工作得很好但是我在http://mysite.com/blog有一个博客,并且在使用 htaccess 重写时显示博客(正确)但是在 IIS 中,它试图获取名为 blog 的配置文件(不正确)。

如果我要在 URL (http://mysite.com/blog/) 的末尾添加一个斜杠,那么它可以工作,但我相信客户已经发送了没有斜杠的抵押品,所以这不是一个真正的选择。

我尝试添加一个新规则来将http://mysite.com/blog重写为 .../blog/ 但这也不起作用。

有什么建议么?

4

1 回答 1

1

解决了。向规则添加了一个条件,即如果它不是目录。

于 2012-11-08T10:30:43.597 回答