① 64位系統php運行報錯:1%不是有效的win32應用程序解決
兩種可能:
第一種就是文件本身有問題,可以重新下載覆蓋看看可否解決。
第二種可能就是與系統版本不兼容會出現這種情況。
可以考慮是否第二種情況,畢竟這種可能性是比較大的。
② linux+apache能運行asp.net程序嗎應該如何設置
LINUX+APACHE主要用來是跑PHP的,跑ASP.NET需要在WINDOWS環境里裝IIS
由於公司的產品在新的版本中,需要考慮一些新的部署方式,所以又抽空關注了一下.NET跨平台的一些解決方案。雖然Mono Project對基於.NET開發的人來說都不陌生,不過由於Mono是比較狹義的跨平台(因為它是OS級別的)概念。而從廣義的角度來說,使用不同的Web Server也可以算是一種垮平台。
緣起是由於IIS的口碑實在太濫,以至於不少的關鍵應用場景明文禁止安裝和使用IIS。而從ASP.NET的執行原理來看,它是通過一個Web Server處理tcp請求,然後把對ASPX執行和呈現交於使用.NET實現一個託管環境來進行的。所以使用Apache是目前最經濟的IIS替代品,而同時在Apache的sub-project正好有一個支持ASP.NET的模塊,並且已經開發到了2.0版本。我所配合使用的版本是Apache HTTP Server 2.0.55和mod_aspdotnet 2.0.0。安裝非常的簡單,兩個程序都是msi安裝包,一路next就搞定了。完了再在安裝目錄/htdocs下建一個目錄,如:active。
不過其中有兩個小問題需要注意:
一是:在安裝Apache HTTP Server的時候,如果我們機器上的80埠已被佔用,需要選使用8080埠來安裝那個選項,當然這個埠是可以在httpd.conf文件里修改的。只是使用這種安裝方式安裝好以後需要手動的啟動apache2服務,使用cmd命令並進入apache安裝目錄,如:D:\Program Files\Apache Group\Apache2\bin,運行:apache -k install。
二是:在配置aspdotnet_mole的時候,我們需要在httpd.conf文件中追加以下清單: #asp.net
LoadMole aspdotnet_mole "moles/mod_aspdotnet.so"
AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj licx rem resources resx soap vb vbproj vsdisco webinfo
<IfMole mod_aspdotnet.cpp>
# Mount the ASP.NET example application
AspNetMount /active "J:/Working/BIVSS"
# Map all requests for /active to the application files
Alias /active "J:/Working/BIVSS"
# Allow asp.net scripts to be executed in the active example
<Directory "J:/Working/BIVSS">
Options FollowSymlinks ExecCGI
Order allow,deny
Allow from all
DirectoryIndex Default.htm Default.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>
</IfMole>
本來這個配置文件很簡單,還有詳細的注釋。不過一定要注意上面的命令(非#開頭的行),都需要寫在一行上,如果是從網頁上要特別的小心,特別是AddHandler和AliasMatch這兩句容易被斷成兩行,那樣啟動apache服務就會失敗,並且提示非常簡單,根本不會告訴你配置文件載入錯誤。
目前,這個mod_aspdotnet模塊最大的問題是在認證支持上的不足,比如windows和form都還不能支持,不過開源的東西更新還是很快的。由於使用Microsoft .NET Framework作為CLR,開發更新的壓力和Mono不在一個數量級上,相信很快就能有對頁面認證的較好支持。