|
|
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。3 N8 r# h" Z3 \$ |0 i: W3 ^
.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。$ z' G" C6 X- k7 p$ Y0 {9 X
下面就介绍让Apache支持ASP.NET的办法。
& i7 F2 c, V1 J W* V% e. ]$ _* B
) d" y" O/ _9 Z$ E( m1 a- J& c8 ?, ~ 首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。
1 s- |! K+ e7 L4 Q! B0 P; a+ a: h" z& C- Z& W
然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:
# E5 s C3 r4 A# ]http://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi
6 @' U* R. U( O1 p% G9 C1 `0 J8 ^具体的安装过程请参阅其他文章,本文不再赘述。& l, z( L! T% g$ j" ~
) a e1 R" l$ f2 Z& H" X b- n" d- k 下面要下载并安装Apache环境下的ASP.NET模块。下载地址:% s" S5 k; K; ^; Q
http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi
7 p3 {5 u- }+ H% q0 f下载完成后双击打开,一路Next即可安装完成。 U+ w f5 u9 k# K
# v5 {1 x3 V6 W) _# t% V# C& F 为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:" C3 s( Y7 n' j! l; S; m8 y8 e% ^
3 r* q! i0 e( q$ Y#asp.net
8 B# w! G- K* P3 O( ALoadModule aspdotnet_module "modules/mod_aspdotnet.so"" k4 E& R1 J( G
0 e3 n* {' V8 c; dAddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \# y: t+ F/ c5 j- D q3 H
licx rem resources resx soap vb vbproj vsdisco webinfo
4 Y: I- {: C0 w; ]
- z0 X4 r+ y- M' \ d3 K<IfModule mod_aspdotnet.cpp>! p7 i; Q9 Z3 h; w4 b
2 E; C4 y+ F1 j7 q # Mount the ASP.NET example application
4 f- |7 m- g- m AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active": e& L% J: ]. `; @7 S# x# b
$ G* D G( q" Z. O6 Y. x) n # Map all requests for /active to the application files$ M$ p* Y! W6 v+ l
Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
) h5 c: U- ~# L
: w7 s: T5 f, h* I1 h # Allow asp.net scripts to be executed in the active example! O j2 \! D0 H+ q$ t6 w f2 V
<Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">* d" v+ E3 D. z4 z) u/ B
Options FollowSymlinks ExecCGI
3 _' o& w5 P& Z! G Order allow,deny
3 a7 ^$ Y/ r# h: m+ l% h, Q Allow from all: @" |. w" Z# B" s
DirectoryIndex Default.htm Default.aspx
# i5 s$ s# k8 j5 Q, _; J, J </Directory>. `6 l! K* [& Z7 G5 F7 J1 Z
* E3 K# A+ P5 R0 N( P( H- z # For all virtual ASP.NET webs, we need the aspnet_client files
* m+ Y" `3 X9 {, |- K2 I # to serve the client-side helper scripts.3 o" [# W5 P% t; K- q0 m
AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \# g; o/ z1 j5 g, Z6 b9 C
"C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4", y, n$ ~* l' x0 f2 o4 b
<Directory \4 I( i) }- K8 t5 N- i5 Y& X5 N
"C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">0 }9 h8 y/ o K. w+ \: Q
Options FollowSymlinks
]2 h- _2 g+ k" k4 ` Order allow,deny( k/ h! ]( M) e2 ]# Y
Allow from all
: |( Y, d+ x, S </Directory>
& I) i# E+ q; @" g; D* F" a# j2 d5 {7 U. D2 t8 i" A- w4 m
</IfModule>
. n# n E$ N- b2 Y. O9 d
/ P: B" p) o6 m- i 其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。) R+ g2 i) ^1 ?7 |" J9 Z, f3 w
现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。
& ^# r4 F: ^* Y: s+ d/ n0 i& d0 C* P Z
由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。 |
|