2009-02-22 163 views
5

我有在IIS7上運行的Joomla 1.5.9。我現在正在從Joomla全局配置頁面試驗SEO設置。在IIS7上用Joomla重寫URL

首先,我玩弄了搜索引擎友好的網址(即擺脫了網址的查詢部分);這工作正常。

我也嘗試啓用「使用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類似 - 是否預期? – Jimmy 2009-02-24 02:59:13