如何在IIS6上使用Zend Framework 2和虚拟目录?

时间:2013-06-07 15:16:02

标签: php iis-6 rewrite zend-framework2 iirf

我正在尝试设置Zend Framework 2环境但没有成功。 我一直在遵循这些指示:

http://framework.zend.com/manual/2.0/en/user-guide/skeleton-application.html

一个区别是我正在尝试将其安装在虚拟目录上。 示例网址为:

http://localhost/12345678/index/index

我已经输入了“欢迎使用Zend Framework 2”页面:

http://localhost/12345678/index.php/

由于某种原因,最后的斜线是重要的,否则页面将无法加载,我不知道为什么?我希望以下链接可以正常工作但不会:

http://localhost/12345678/

因为我们别无选择,只能使用IIS 6,我试图在URL上使用Ionics Rewrite过滤器,但没有成功。到目前为止我尝试过的是:

RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^.*$ index.php [NC,L]
and
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^/(\d*)/(.*) /$1/index.php/ [L,QSA]
and
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^.*$ /12345678/index.php/ [NC,L]

我似乎能够访问欢迎页面和通用404错误页面(而不是Zend 404)。我无法访问测试控制器页面甚至是zend错误页面。 任何人都可以帮我找出与Ionics IIRF.ini文件一起使用的RewriteRule,它允许我将Zend Framework 2与虚拟目录一起使用,或者指向我正在做错的方向吗?

提前致谢!!!

我已经修复了我的问题,重新开始并按照本教程,省略了Apache的东西:

http://samminds.com/2012/07/zend-framework-2-installation-on-xampp-for-windows/

我不完全确定为什么它正在工作,但IIS似乎正在读取.htaccess文件,这很棒。粗略的这导致了我的其他问题,但这一个解决了我:)。我没有用这个回答我自己的问题,因为我觉得我所做的不是解决问题的正确方法。

1 个答案:

答案 0 :(得分:0)

您是否看过ISAPI Rewrite模块bij Helicon? 它支持Apache mod_rewrite规则语法。我过去使用过这个模块和ZF 1,它就像一个魅力。 有一个免费版本有一些限制:http://www.helicontech.com/download-isapi_rewrite3.htm