在IIS7上用Joomla重写URL


5

我有在IIS7上运行的Joomla 1.5.9。我现在正在从Joomla全局配置页面试验SEO设置。

首先,我玩弄了搜索引擎友好的网址(即摆脱了网址的查询部分);这工作正常。

我也尝试启用“使用Apache mod_rewrite”。我安装了“用于IIS 7.0的Microsoft URL重写模块”,并根据http://learn.iis.net/page.aspx/527/joomla-on-iis添加了web.config。当点击菜单链接时,这似乎工作,我不再看到URL中的index.php。地址栏更新为正确的URL,但显示的内容始终是主页的内容。我在IE和谷歌浏览器中都试过,结果相同。刷新加载后的页面没有什么区别。

我试过重新启动IIS7,它没有什么区别。

编辑:我按照下面的建议(遵循http://www.mydotnetworld.com/post/2008/10/24/URL-Rewriting-In-Joomla-15-on-IIS-7.aspx的说明:打开fast cgi,修改了php.ini,并导入了重写规则,而不是将它们放入web.config中),我现在得到了404而不是只是显示主页的内容。该URL仍显示正确重写。所以,不同的行为,但仍然无法正常工作。我不知道这是有用的信息,但是这两个领域都显示在404页: 请求的URL http://localhost:80/joomla_course/seasonal-specialties 物理路径C:\的Inetpub \ wwwroot的\ joomla_course \时令,特色 应的物理路径是“非重写'网址?还是预计它会是这样?

编辑2:哦!我发现有人在Joomla论坛上发布了相同的问题:http://forum.joomla.org/viewtopic.php?f=543&t=364706&p=1598137#p1598137。虽然没有答案。

关于如何诊断(或甚至更好,修复:)的任何想法)?

谢谢!

1

我现在得到这个工作。关键是确保FastCGI用于运行php(按照http://learn.iis.net/page.aspx/246/using-fastcgi-to-host-php-applications-on-iis-70),并确保启用了“使用Apache mod_rewrite”。如果“使用Apache mod_rewrite”关闭,但IIS7中存在重写规则,则HTML将显示,但没有任何样式或图像。

使用FastCGI的要求很奇怪(并且与http://maximumpcguides.com/windows-vista/how-to-create-a-windows-vista-iis7-mysql-php-web-server中建议的内容相矛盾,这正是我以前用来设置php的原因)。当不使用FastCGI时,除了URL重写之外,一切似乎都起作用。

似乎无论是导入规则(如http://www.mydotnetworld.com/post/2008/10/24/URL-Rewriting-In-Joomla-15-on-IIS-7.aspx中所建议的)或手动将它们添加到web.config文件(如http://learn.iis.net/page.aspx/527/joomla-on-iis中所建议的)都可以使用。


0

它看起来像web.config中的规则有问题。只是从对您链接的文章发表评论,并不是唯一有此问题的人。我将删除web.config,然后按照步骤here

  0

看起来很有前途,但没有奏效。现在,当我点击链接时,我得到了404的。该网址仍然看起来是正确的(正如他们最初那样)。 404表示物理路径与(重写的)URL类似 - 是否预期? 24 2月. 092009-02-24 02:59:13