ISAPI ZEND url重写将额外的“/index.php/”添加到url中

时间:2009-09-22 23:19:56

标签: zend-framework url-rewriting isapi httpd.conf isapi-rewrite

我们最近在我们的服务器上重新安装了我们的网站,系统管理员说它是一个精确的重建,它确实在我看来它是,但有一些不同的事情发生。我最初并没有开发这个网站,那些做过的网站已经不再可用了。

管理网站的网址现在是

// admin.site.com/index.php/schedules

以前是,应该是

// admin.site.com/schedules

额外的index.php将被插入到网址中。但是管理站点内的所有链接都不包含index.php,因此它们不起作用。如果将index.php插入任何URL,它就可以工作。这个index.php来自哪里,如何从重写规则中消除它,以便链接起作用。

这是我的httpd.conf文件所示:

# Helicon ISAPI_Rewrite configuration file
# Version 3.1.0.56

# turn on rewriting RewriteEngine On RewriteBase /

# for all files not found in the file system,
# reroute to "index.php" bootstrap script,
# keeping the query string intact. 
RewriteCond %{HTTP_HOST} ^admin.site.com$ 
RewriteCond %{REQUEST_FILENAME} -s [OR]
RewriteCond %{REQUEST_FILENAME} -l [OR] 
RewriteCond %{REQUEST_FILENAME} -d 
RewriteRule ^.*$ - [NC,L] 
RewriteCond %{HTTP_HOST} ^admin.site.com$ 
RewriteRule ^.*$ index.php [NC,L]

谢谢!任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:-1)

您需要实现并启用ApacheModrewrite。然后将.htaccess文件放在admin.site.com文件夹中 其内容将是:

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} -s [OR] 
RewriteCond %{REQUEST_FILENAME} -l [OR]
RewriteCond %{REQUEST_FILENAME} -d


RewriteRule ^.*$ - [NC,L]
RewriteRule ^.*$ index.php [NC,L]