IIS URL重写后用PHP获取URL参数

时间:2015-11-05 15:21:43

标签: php iis url-rewriting

我有一个PHP网站,

e.g。 http://www.test.com/rewrite-test/s/z2SZhBL

这是以前在Apache上有一个重写规则来捕获" z2SZhBL"使用$_GET['id']

RewriteEngine on
RewriteRule ^([^/\.]+)/?$ /index.php?id=$1 [L]

我需要将此网站移到IIS上,我需要让URL重写规则正常工作。我试过这些例子。

http://www.iis.net/learn/extensions/url-rewrite-module/creating-rewrite-rules-for-the-url-rewrite-module

所以在文件夹" rewrite-test"我有一个index.php,它回显了$_GET 变量,并且没有返回的变量,它们都是空的。

我可以使用此变通方法获取变量。

$params = explode( "/", $_SERVER['HTTP_X_ORIGINAL_URL'] );
print_r($params);

这是最佳解决方案吗?

1 个答案:

答案 0 :(得分:0)

IIS管理器有一个很好的导入规则工具。请参阅此处的完整演练:http://www.iis.net/learn/extensions/url-rewrite-module/importing-apache-modrewrite-rules

  1. 打开网址重写
  2. 在“操作”窗格中,单击导入规则
  3. 浏览到.htaccess文件(或复制/粘贴)
  4. 查看已转换的规则
  5. 根据需要重命名规则
  6. 单击“应用链接”以保存已转换的规则