2017-01-09 50 views
2

我已經安裝在IIS 8.5的機器一個WordPress博客WordPress的博客的子目錄工作,我使用的窗體身份驗證如下:認證不安裝IIS8.5

<authentication mode="Forms"> 
    <forms loginUrl="/login/login.aspx" name="authcookies" protection="All" timeout="30" path="/"> 
    </forms> 
</authentication> 

我也有:

<authorization> 
    <deny users="?" /> 
</authorization> 

阻止未經身份驗證的用戶訪問博客。

當我未經身份驗證嘗試訪問www.test.com/blog時,它將我重定向到登錄頁面,但如果我轉到www.test.com/blog/subdir它將忽略身份驗證。

任何想法?

回答

1

您將需要添加處理程序來強制IIS通過.net授權管道運行對php頁面的請求。此添加到/博客目錄中的web.config文件:

<handlers>                       
     <add name="phpauth" path="*" verb="*" modules="IsapiModule" scriptProcessor="C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_isapi.dll" resourceType="Unspecified" requireAccess="None" preCondition="classicMode,runtimeVersionv4.0,bitness64" /> 
    </handlers> 

確保前提的位數和運行時版本相匹配您的應用程序池的

+0

感謝您的回答。這解決了問題。我創建了一個運行在64位上的新應用程序池,並添加了處理程序配置到web.config,現在它正在工作。 –