使用IIS URL重写模块找不到文件时如何重写URL

时间:2012-05-31 10:02:52

标签: php iis url-rewrite-module

我需要在IIS上运行PHP应用程序,我试图移植看起来像这样的htaccess规则:

<IfModule mod_rewrite.c>
 RewriteEngine On
 RewriteBase /
 RewriteCond %{REQUEST_FILENAME} !-f
 RewriteCond %{REQUEST_FILENAME} !-d
 RewriteRule ^(.*)$ index.php?%{QUERY_STRING} [NE,L]
</IfModule>

我对htaccess没有经验,但我被告知这些规则说明如果找不到该文件,则应该将请求发送到index.php并且应该继承查询字符串。请注意,这不是用户浏览器的重定向,而是传输所有发布数据的纯服务器操作。

那么如何使用IIS URL Rewrite模块创建这些规则?我应该使用什么规则来重写基于原始地址上丢失文件的URL?我试图在IIS7上执行此操作

1 个答案:

答案 0 :(得分:1)

如果您正在使用IIS URL Rewrite模块,您应该可以直接导入.htaccess。

当你在网站上时,你需要在IIS中使用它,双击URL Rewrite图标,然后在右侧有一个'Import Rules ...'链接。点击这个,你的.htaccess中的bosh,点击“导入”,一切都应该有效。

HTH