以前調試網站一直用的vs自帶的IIS,做為學習沒啥大礙,但要是用於團隊項目開發就會帶來諸多不便。團隊開發項目有統一的網站端口號、文件目錄什么的,端口號可以在配置文件中修改倒也沒啥,但是要在自己的項目中建一個虛擬的文件目錄映射到服務器上,使用VS自帶的IIS是辦不到的,只能用本地的IIS。
上面兩張圖片是添加網站虛擬目錄
好了,廢話不多說,下面來說出現的問題以及解決方法
1、如果網站用vs自帶的IIS啟動過,系統就會自動為這個網站創建一個端口
這個文件的位置: C:\Users\r-\Documents\IISExpress\config\applicationhost.config
如果出現端口號沖突可在此修改。注意:這個是vs-IIS啟動使用的端口號
2、網站配置文件中的端口號,必須要和本地IIS創建時使用的端口號一直
<WebProjectProperties> <UseIIS>True</UseIIS> <!-- 如果使用的是本地IIS這里改成Ture,如果使用VS-IIS這里改成False --> <AutoAssignPort>True</AutoAssignPort> <DevelopmentServerPort>9000</DevelopmentServerPort> <DevelopmentServerVPath>/</DevelopmentServerVPath> <IISUrl>http://localhost:9000</IISUrl> <!--上下兩個端口號要一直,並且使用本地IIS的話要和本地IIS上的端口號一直--> <NTLMAuthentication>False</NTLMAuthentication> <UseCustomServer>False</UseCustomServer> <CustomServerUrl> </CustomServerUrl> <SaveServerSettingsInUserFile>False</SaveServerSettingsInUserFile> </WebProjectProperties>
注:不一樣網站會加載不上
3、如何配置網站到底是用VS-IIS還是用本地IIS
右鍵網站的解決方案--屬性
這里的虛擬是網站的地址 例如:http://localhost:9000
4、IIS上部署MVC網站,打開后ExtensionlessUrlHandler-Integrated-4.0解決方法
IIS上部署MVC網站,打開后500錯誤:處理程序“ExtensionlessUrlHandler-Integrated-4.0”在其模塊列表中有一個錯誤模塊“ManagedPipelineHandler”
解決方法如下:
以管理員運行下面的命令注冊:
32位機器:
C:\Windows\Microsoft.NET\Framework\v4.0.30319\aspnet_regiis.exe -i
64位機器:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\aspnet_regiis.exe -i
就這些吧,個人經驗,非官方,有錯的地方望指出
祝:初學者學習順利!