从 mod_rewrite 到 isapi_rewrite
Posted
技术标签:
【中文标题】从 mod_rewrite 到 isapi_rewrite【英文标题】:From mod_rewrite to isapi_rewrite 【发布时间】:2011-01-29 10:34:16 【问题描述】:我有一个 Modx htaccess 文件,需要从 mod_rewrite 重写为 isapi_rewrite 2。
有人可以帮帮我吗? isapi_rewrite 2 需要更改以下几行:
选项 +FollowSymlinks 重写引擎开启 重写基础/
RewriteCond %HTTP_USER_AGENT ^.内部\虚拟\连接。$ [NC] 重写规则 .* - [F,L]
RewriteRule ^(manager|assets) - [L]
RewriteCond %REQUEST_FILENAME !-f RewriteCond %REQUEST_FILENAME !-d RewriteRule ^(.*)$ index.php?q=$1 [L,QSA]
非常感谢。
【问题讨论】:
你试过了吗? ISAPI 重写使用与 mod_rewrite 非常相似的语法。但是,我不相信 Options、RewriteEngine 或 RewriteBase 受支持,但我可能是错的。有一个类似RewriteBase的属性——UriMatchPrefix,但是文档中没有提到RewriteEngine。 【参考方案1】:我强烈建议使用ISAPI_Rewrite v3,因为它有 99% 的 mod_rewrite 兼容语法(从上面的配置中只有选项不起作用),而 ISAPI_Rewrite v2 不支持“RewriteCond %REQUEST_FILENAME !-f”和一些其他指令。
此外,如果您使用的是 IIS 7 (7.5),您可以使用 Helicon Ape,它在 Windows 系统上实现了 30 多个 Apache 模块(包括 mod_rewrite)。 Ape 将按原样支持上述配置,无需任何修改。
【讨论】:
Helicon Ape也可以安装在windows server 2003上的IIS6上helicontech.blogspot.com/2009/03/…以上是关于从 mod_rewrite 到 isapi_rewrite的主要内容,如果未能解决你的问题,请参考以下文章
使用 mod_rewrite 从 URL 的末尾隐藏 .php
从 xampp 移动到 apache 2.4.7 后,Laravel 路由返回 404。 mod_rewrite aur htaccess 或缺少 apache 设置?