2012-11-12 74 views
0

直到現在我只在Visual Studio中使用這個web.config。但是,我現在試圖將我的網站發佈到IIS,並且存在與我的web.config相關的錯誤。它似乎崩潰了模塊的配置數據。web.config引起iis問題

<?xml version="1.0"?> 

<configuration> 
    <system.web> 
     <compilation targetFramework="4.5" /> 
     <httpRuntime targetFramework="4.5" /> 
    </system.web> 
    <phpNet> 
    <classLibrary> 
     <add assembly="php_mcrypt.mng, Version=3.0.0.0, Culture=neutral, PublicKeyToken=4ef6ed87c53048a3" section="mcrypt" /> 
     <add assembly="php_curl.mng, Version=3.0.0.0, Culture=neutral, PublicKeyToken=4ef6ed87c53048a3" section="curl" /> 
    </classLibrary> 
    <scriptLibrary/> 
    </phpNet> 

</configuration> 

錯誤:

enter image description here

這張截圖是試圖增加一倍IIS的 「功能視圖」 中點擊任何一個 「要素」 的時候。但是如果我只是通過一個瀏覽器中點擊網站上的錯誤是一樣的:

The configuration section 'phpNet' cannot be read because it is missing a section declaration

phpNet是Phalanger,並應安裝擴展,但我不知道如何檢查。就像我說的,這個web.config和phalanger在visual studio中工作良好,所以我不知道什麼是錯的。特別是因爲安裝程序確實在iis中安裝了樣本。

回答

0

我發現這個張貼http://crdevelopment.net/2012/06/12/fixing-iis-error-the-configuration-section-system-web-extensions-cannot-be-read-because-it-is-missing-a-section-declaration/

害得我來檢查應用程序池。 enter image description here

在哪一點我注意到那裏倍數。我選擇了phalangerAppPool,並擺脫了我的錯誤,但帶來了一個新的。

Handler 「PageHandlerFactory-Integrated」 has a bad module 「ManagedPipelineHandler」 in its module list

但是,這種錯誤是很多容易解決(fix

1

你缺少配置部分定義

<configSections> 
<section name="phpNet" type="PHP.Core.ConfigurationSectionHandler, PhpNetCore, Version=3.0.0.0, Culture=neutral, PublicKeyToken=0a8e8c4c76728c71" /> 

沒有這一點,.NET不知道「phpNet '配置部分。

此外,這意味着,您沒有使用setup.exe安裝Phalanger。這裏有一些關於使用Phalanger沒有正確安裝的信息(重要的是關於配置的部分)http://www.php-compiler.net/blog/2011/installation-free-phalanger-web

+0

我發佈的答案是怎麼回事?因爲一旦我開始使用「PhalangerAppPool」工作。 –

+0

我也最終將這些語句移到了.net/frameworks/v4/config目錄下的master.config –