|
|
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。
6 C& p3 G8 L5 P3 I/ j.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。
( J5 S0 z9 I7 x9 [# L下面就介绍让Apache支持ASP.NET的办法。( r; J) n y. R3 R4 ?/ w- L
/ E1 v+ x! G% ~5 K8 R3 f
首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。
/ w/ q/ Z' N+ t) ^2 O2 m0 A
; ~+ B2 R p1 C& b 然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:
3 ~" B8 I. Y' o: ?http://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi
( b' g" S+ k2 U9 R具体的安装过程请参阅其他文章,本文不再赘述。
& \# [& `5 a5 @" a' n5 }* I; q& U; r5 h1 h% Y8 g5 O
下面要下载并安装Apache环境下的ASP.NET模块。下载地址:
: }, m9 `, b9 C! a7 w6 P- p% [' Phttp://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi* N: Q0 O7 F' Q' p5 L) V, ?+ W/ J
下载完成后双击打开,一路Next即可安装完成。 v+ r5 J+ l M6 Z. e4 |
?, z9 ?5 A+ T+ D. ^* b) B9 `/ ~
为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:8 D4 h5 ^8 T0 r
/ ~5 B7 r0 x# u/ Y) Z/ s7 k#asp.net
4 A* Q: ^3 J* m$ S; e0 I6 h5 ?LoadModule aspdotnet_module "modules/mod_aspdotnet.so"
n% h: m9 T, q* d" y8 O4 K! S' F; g- |
AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \
" S% l" A+ d4 I8 ` licx rem resources resx soap vb vbproj vsdisco webinfo
" k w K# [3 M& R$ i
. @! T' y3 m j, S$ r6 H- n+ O" K0 ]<IfModule mod_aspdotnet.cpp>
& ^5 _% ?! \3 }" ]5 R( c( }5 ], A; c$ }' k1 r7 w z
# Mount the ASP.NET example application
1 w" F! l' o) u( Y( \ AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active": } K$ Y( b5 x( \0 M
) ~. c, o. I5 T& }" v2 t # Map all requests for /active to the application files* v: h* n4 g4 g& a
Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
3 [- ^( X# B. e$ n1 a h
3 `( G& k7 J1 _* G # Allow asp.net scripts to be executed in the active example2 S) ?. d% c3 U# E
<Directory "D:/Program Files/Apache Group/Apache2/htdocs/active"> X, X- m, V, t6 l0 s* `% [
Options FollowSymlinks ExecCGI
, [4 H. d- }6 N( O5 t Order allow,deny
6 V# d6 P- K6 f, u5 W Allow from all
+ s6 m. e; M" v9 B DirectoryIndex Default.htm Default.aspx. F3 d$ b& |5 d
</Directory>! q ?1 w% ]; B7 j% b5 S
( _8 ^! J/ t8 {$ y* _
# For all virtual ASP.NET webs, we need the aspnet_client files
! _* R, D' L( D% b+ [- Y2 x& q # to serve the client-side helper scripts./ L! R' K' v! k* K* D" L$ ~ F
AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \5 V( H. D9 L) r4 W% b4 P
"C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"
) f/ q' F3 P3 N* | <Directory \
8 j3 r. i7 J4 L, r# A "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">4 v6 e L2 m$ c' j
Options FollowSymlinks+ Q7 d$ H, k% v8 Y. R( X. x! C
Order allow,deny
0 }+ |7 n5 c# U7 a' V# q Allow from all
0 B: Q Z4 T p2 S </Directory>
" H1 | h/ b b5 ]: j$ q b. p0 }# t. k+ I7 a/ L
</IfModule>
+ j a1 F l- g& f. M$ I
4 S Q4 a4 O" N 其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。$ q1 l5 u- }0 M9 [
现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。
+ C* Q+ H$ I! J( S" {( N; W7 M* K7 H' j3 l$ C. F
由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。 |
|