2010-07-08 55 views
0

我的網站似乎只加載索引頁面,無論它給出什麼路徑。如何讓Zend與IIS 7.0(重寫模塊V2)和Windows 2008一起工作?

有沒有人知道任何已知的問題,讓Zend與IIS 7.0(重寫模塊V2)和Windows 2008正常工作?

我對此感到絕望,無法找到任何合適的解決方案?

我可以把一個phpinfo()屏幕截圖,如果它有幫助嗎?

以下信息在phpinfo()函數設置

_SERVER["HTTP_X_ORIGINAL_URL"] /prices/ 

重寫似乎在這個意義上它總是命中index.php頁面只是有時工作給出了網頁404和犯規加載正確的意見。

+0

是否有可能事情是你的代碼錯誤? htaccess的?你的應用程序的basepath?在Apache上,我會談論你的httpd.conf文件。 – Iznogood 2010-07-08 21:52:05

+0

可能是我想找出它可能是什麼,因爲所有的路由都是在zend庫內完成的,所以不知道我的代碼中可能存在什麼問題,但有什麼想法? – Andrew 2010-07-08 22:35:19

+0

我的第一個評論包含3條建議。 – Iznogood 2010-07-09 04:54:51

回答

2

這是一個與.htaccess文件不能正確轉換IIS中modrewrite v2的導入功能的問題。

這是正確的標準配置重寫:

<rewrite> 
      <rules> 
       <rule name="Zend Standard Rule" stopProcessing="true"> 
        <match url="^(.*)$" ignoreCase="false" /> 
        <conditions logicalGrouping="MatchAll"> 
         <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" /> 
         <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" /> 
        </conditions> 
        <action type="Rewrite" url="index.php?route={R:1}" appendQueryString="true" /> 
       </rule> 
      </rules> 
     </rewrite> 

希望這可以幫助別人