2008/4/8
Apache初配
最近在做个小网站,做好了大部分的页面,要发布,开始的时候选择了IIS发布,后来由于一些问题,还有我们网络工程师的推荐,决定用Apache,于是研究了以下,把自己的初配和感受记录下来,也是为了和我一样的初配Apache的朋友一点帮助!
Apache对Asp.net的程序是不支持的,需要用到一个Asp.net的模块mod_aspdotnet(下载地址:http://sourceforge.net/projects/mod-aspdotnet)Apache我用的是官方的2.0.63(下载地址:http://httpd.apache.org/download.cgi),没有用最新的版本,原因是mod_aspdotnet安装的路径必须和Apache是一致的,我开始用了最新的Apache2.2.8它的路径已经变了,而mod_aspdotnet的路径还是老版本的,而且即便是更改了mod_aspdotnet路径,也不能安装在最新的Apache下,不知道是什么原因,于是我就换了2.0.63版本,在安装Apache的时候有三个选项要填写,是域名,服务器名(机器名字),邮件地址,随意填写后一路Next就可以了,mod_aspdotnet的安装也是一路Next就可以了.安装完后,在浏览器下输入127.0.0.1应该就可以看到一个页面提示安装成功了.由于是Asp.net,DotNet2.0等都要安装,我就不多说了.
安装了以后就是配置了,在配置文件(httpd.conf)最后添加上
#asp.net
LoadModule aspdotnet_module "modules/mod_aspdotnet.so"
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
licx rem resources resx soap vb vbproj vsdisco webinfo
<IfModule mod_aspdotnet.cpp>
# Mount the ASP.NET example application
AspNetMount /active "C:/Program Files/Apache Group/Apache2/htdocs/active"
AspNetMount /active "C:/Program Files/Apache Group/Apache2/htdocs/active"
# Map all requests for /active to the application files
Alias /active "C:/Program Files/Apache Group/Apache2/htdocs/active"
Alias /active "C:/Program Files/Apache Group/Apache2/htdocs/active"
# Allow asp.net scripts to be executed in the active example
<Directory "C:/Program Files/Apache Group/Apache2/htdocs/active">
Options FollowSymlinks ExecCGI
Order allow,deny
Allow from all
DirectoryIndex siteinfo.aspx
</Directory>
<Directory "C:/Program Files/Apache Group/Apache2/htdocs/active">
Options FollowSymlinks ExecCGI
Order allow,deny
Allow from all
DirectoryIndex siteinfo.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>
# 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>
(配置文件转载于百度)
其中的C:/Program Files/Apache Group/Apache2/htdocs/active 路径是专门为放Asp.net程序建立的.active文件夹名随意
这个时候其实已经配置完了,把自己的Asp.net程序方到active文件夹,在浏览器中输入 http://本机IP/active/Default.aspx(网站起始页)就应该可以看到效果了.
说说自己的感受吧.一个字,很慢,但是也可能是我的机器配置低了点,但是相比IIS还是差了很多,3次打开就有2次连接数据库超时,而且对Ajax的支持也不好,都无法实现效果(不知有没有解决的方式),所以说用Asp.net还是用IIS吧.毕竟都是微软自己的东西支持就是要强很多.
初配写了点,可能有不对的地方,有Apache专家可以给我留言指点以下,谢谢!