5

我在 IIS7 上运行了 Joomla 1.5.9。我现在正在尝试使用 Joomla 全局配置页面中的 SEO 设置。

首先,我玩弄了搜索引擎友好的 URL(摆脱了 URL 的查询部分);效果很好。

我还尝试启用“使用 Apache mod_rewrite”。我安装了“Microsoft URL Rewrite Module for IIS 7.0”并按照http://learn.iis.net/page.aspx/527/joomla-on-iis添加了 web.config 。单击菜单链接时,这似乎起作用,因为我不再在 URL 中看到 index.php。地址栏会更新为正确的 URL,但显示的内容始终是主页的内容。我在 IE 和 Google Chrome 中都尝试过,结果相同。加载后刷新页面没有任何区别。

我尝试重新启动 IIS7,但没有任何区别。

编辑:在我遵循以下建议之后(遵循http://www.mydotnetworld.com/post/2008/10/24/URL-Rewriting-In-Joomla-15-on-IIS-7.aspx的说明:打开快速的 cgi、修改的 php.ini 和导入的重写规则,而不是自己将它们放在 web.config 中),我现在得到 404 而不仅仅是显示主页的内容。该 URL 似乎仍被正确重写。所以,不同的行为,但仍然不起作用。我不确定这是不是有用的信息,但是这两个字段显示在 404 页面中: Requested URL http://localhost:80/joomla_course/seasonal-specialties 物理路径 C:\inetpub\wwwroot\joomla_course\seasonal-specialties物理路径是否应该是“未重写”的 URL?还是预期会是这样?

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

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

谢谢!

4

2 回答 2

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中的建议)将起作用。

于 2009-02-24T21:28:11.830 回答
0

看起来 web.config 中的规则有问题。仅仅从对您链接的文章的评论开始,您并不是唯一一个遇到此问题的人。我将删除 web.config,然后按照此处列出的步骤进行操作。

于 2009-02-23T21:11:26.747 回答