前置:
在xp系統中,打補丁之類或啥子操作引起或多或少的問題,最終導致iis不能使用;
不想裝系統...忍著...
最近突發事件導致,需要摸一下apache伺服器處理,好吧,那就搜尋下吧.....
目標:
1、apache需要支援Net
第一步:安裝apache伺服器
參考地址:http://jingyan.baidu.com/article/d8072ac47baf0eec95cefdca.html
實踐過程:
1、win7 64
2、Apache 2.4.23 伺服器軟體
3、相容VS2008開發工具,採用V9;可以支援xp,server 2003【當前未實踐xp】
安裝過程,在參考文件中很詳細,這裡再重複一個解除安裝:
建議先停止服務再刪除
cmd-》輸入命令:sc delete [apache伺服器名稱]
第二步:如何配置Net
Apache組織早在2007年就開發出mod_aspdotnet,如下地址:
https://sourceforge.net/projects/mod-aspdotnet/?source=typ_redirect
下載後,直接安裝,在安裝過程中,第一步,很慢,他需要檢測你的apache目錄;
具體過程如下:
1.安裝mod_aspdotnet,安裝過程中會先檢測Apache的安裝目錄,確認正確後一路“next”;
2.進入Apache的modules目錄,你會發現增加了mod_aspdotnet.so;
3.進入Apache的conf目錄,開啟httpd.conf配置檔案,在尾部增加如下程式碼:
##################################################################
#ASP.NET
LoadModule aspdotnet_module "modules/mod_aspdotnet.so"
AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj licx rem resources resx soap vb vbproj vsdisco webinfo
# Mount the ASP.NET example application假設網站檔案位於d:/web/dotnet_document
AspNetMount /mytest "d:/web/dotnet_document"
# Map all requests for /active to the application files
Alias /mytest "d:/web/dotnet_document"
# Allow asp.net scripts to be executed in the active example
<Directory "d:/web/netSample">
Options FollowSymlinks ExecCGI
Order allow,deny
Allow from all
DirectoryIndex Default.htm Default.aspx index.aspx
</Directory>
# For all virtual ASP.NET webs, we need the aspnet_client files
# to serve the client-side helper scripts.
AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"
<Directory "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
Options FollowSymlinks
Order allow,deny
Allow from all
</Directory>
##################################################################
基本上就配置完畢,需要檢測下成果;
1、apache是成功了,能訪問localhost;
2、新增 mod_aspdotnet後,失敗,重複做了幾次都類似錯誤;【其中出現一些錯誤,需要重啟才能停止,比如埠占用問題】
預估估計是apache版本問題,重新下載2.2版本的apache程式嘗試,實踐過程中,apache2.2只能放在根目錄下的目錄中,不知道啥子問題;
我把apache放在d:\webServer\apache22中,一直過不到,報錯說d:\apache22目錄下的啥子檔案找不到;實際配置到d:\webServer\apache22;粗略感覺還是啥子地方沒有弄明白;
好吧,我先將就到d:\apache22,重啟後,apache正常了。
3、經過window的錯誤資訊檢視,知道是應該是配置檔案的問題,不應該
csproj \
licx ...
應該 csproj licx ...
這個估計之前的2.4沒有問題
4、經常出現433埠占用問題,經過分析:是被佔用了
win下面輸入命令,可以看到pid
netstat -o ,定位了pid,直接kill
5、現在
apache環境:Apache/2.2.31 (Win32) mod_aspdotnet/2.2 mod_ssl/2.2.31 OpenSSL/1.0.2j
好吧,能用了;但出現:“
當前標識(NT AUTHORITY\SYSTEM)沒有對“C:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files”的寫訪問許可權。
”
悲劇,不知道這個咋個弄了,先放到起