apache支持.net了!这个消息对向我这样整天为产品需要IIS支持的人来说真是天大的喜讯!
之前,由于老总提出产品的安装,要将客户当作傻瓜,尽可能地使用安装程序傻瓜化,简单化!基本这个要求,碰到第一个麻烦就是安装IIS,安装时需要检测到用户未安装IIS后,自动安装IIS;且不说自动安装需要从windows安装盘I386上千的目录里找出IIS的所有模块文件,就是有了这些文件,安装时也是麻烦异常,而且需要为每个不同版本的windows提供不同版本的IIS文件!
apache支持.net,首先为我们提供了一个比较方便,可行的替换方案!
以下是我的配置日志:
1.先作准备工作:
下载最新的apache2.0 ,http://mirror.vmmatrix.net/apache/dist/httpd/binaries/win32/apache_2.0.54-win32-x86-no_ssl.msi
下载apache 的 mod_aspdotnet 2.0.0 模块安装包 ,http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi
2.配置
正确安装这两个文件后,进入Apache2/conf 目录,打开httpd.conf配置文件
将以下信息添加至文件最后:
#挂载mod_aspdotnet.so 模块,不需要更改
LoadModule aspdotnet_module modules/mod_aspdotnet.so # Use the asp.net handler for all common ASP.NET file types (.net支持的文件类型) AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj / licx rem resources resx soap vb vbproj vsdisco webinfo <IfModule mod_aspdotnet.cpp> # 挂载.net应用程序; 格式:AspNetMount /<应用程序名> “<物理路径>“ AspNetMount /StoreCSVS "C:/StoreCSVS/StoreCSVS" # ( 格式:Alias /<应用程序名> “<物理路径>“) Alias /StoreCSVS "C:/StoreCSVS/StoreCSVS" # 设置权限,指向你的应该用程序物理路径 <Directory "C:/StoreCSVS/StoreCSVS"> 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> </IfModule>
配置:
DocumentRoot "C:/Inetpub/wwwroot"
将:
<Directory "C:/Apache/Apache2/htdocs">
改为:
<Directory "C:/Inetpub/wwwroot">
以上配置完成后,保存;重启apache
就可以享受apache带给我们的快乐了~~~`;使用apache访问.net可以明显感觉比IIS快很多~~~
不过,目前apache只支持framework1.1,相信不久的将来,会全面支持所有版本的framework
安装apache服务:apache.exe -k install
启动:Apache2/bin/Apache.exe -w -n "Apache2" -k start
重启:Apache2/bin/Apache.exe -w -n "Apache2" -k restart
关闭:Apache2/bin/Apache.exe -w -n "Apache2" -k stop