|
|
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。: |* D, }$ A$ F7 y# t! {- o
.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。
6 d. w1 p6 l5 C D2 H0 s( t下面就介绍让Apache支持ASP.NET的办法。
; B& `/ o2 }5 t! K6 J z5 Z, x4 r& \) V
首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。
! j- f- _1 _5 Z Z4 L, z
9 L c9 |& g" C" r 然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:
' W* I9 W, s1 uhttp://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi
$ o. R$ T) I8 E) r" p具体的安装过程请参阅其他文章,本文不再赘述。
q& [1 D. d: {: G$ o8 p: t
' i& b5 j6 v3 I 下面要下载并安装Apache环境下的ASP.NET模块。下载地址:
8 E" s7 {" F+ X1 U; j5 y' S3 dhttp://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi
@( _6 c& z: U8 u8 Y3 M* k下载完成后双击打开,一路Next即可安装完成。6 p! G9 ?& O5 b& W
+ @$ `! r% j* t" v
为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:
6 }: ]" k, Q4 d) r0 H0 q1 {6 d2 b4 f
#asp.net7 k# s) X8 I% n4 O {% w+ W( {
LoadModule aspdotnet_module "modules/mod_aspdotnet.so"
+ y2 F* o/ o# A/ ?7 x( m5 u
% d" G) ~0 X& A2 q2 p3 ?AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \
x' Q W! L) l- n licx rem resources resx soap vb vbproj vsdisco webinfo 6 a5 J; _7 {! o w, z: {
: P% |: N1 }1 ^<IfModule mod_aspdotnet.cpp>
& T/ {7 Z/ p/ }( m& b" t, z3 u7 `0 r
# Mount the ASP.NET example application: A& A) M+ v7 z2 p3 i! H. F% x7 h
AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
M" W& A' N+ k& ]
$ D7 B' Q, J# o8 U1 F& y1 }4 V P # Map all requests for /active to the application files
: n; m$ [0 G% J Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
' m& r) p# `1 h" J6 V. R, P1 X2 Z& N
7 B& d4 v4 p q- Z- R3 a4 H+ i # Allow asp.net scripts to be executed in the active example
1 M) E U+ B% W$ b, L: A1 M <Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">
1 z7 X0 q2 j7 {8 f Options FollowSymlinks ExecCGI& D) s8 }; P; f2 ^- |! h
Order allow,deny
* n7 \4 e7 d- ?9 u) z. u, k% q Allow from all
3 f( m( b0 i' c; W* W DirectoryIndex Default.htm Default.aspx" ]3 J \% W( O1 u# g
</Directory>
u+ Z3 |9 j! p! a4 J3 i5 D# o/ {* N R% m' t
# For all virtual ASP.NET webs, we need the aspnet_client files 4 | S# R; Z$ e9 k& Z
# to serve the client-side helper scripts.* _9 F' C: E: h) u: i, ?1 y
AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \1 H! S& z8 o6 h
"C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"
) `% Q. E8 U$ I |5 _ R <Directory \5 F8 C& b0 g' @0 `0 ~
"C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
5 c0 [8 `: \0 d* Y T- Y: f Options FollowSymlinks
2 B- [) a7 A; v' s& @5 ~ Order allow,deny
8 k' E+ B$ R# R9 f0 ?8 z/ _ Allow from all
7 h, ~5 K5 G: g5 @. w( G5 W/ D </Directory>
) t& {5 L/ }/ J0 ~5 R `+ P X% n( l( `5 w7 B
</IfModule>
2 K' J1 w# u0 d" l+ |. z8 K
9 N) a0 `% |+ O* ~& O; Q; u6 A6 h. U7 Q 其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。+ v$ n* Z7 |3 Y
现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。5 T+ @: q9 @7 R8 [0 t7 @- h
: i5 I2 a; j/ b2 M
由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。 |
|