|
|
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。 {3 F9 O' N# Y9 X
.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。
- _% E& a6 d, f5 a9 [下面就介绍让Apache支持ASP.NET的办法。* r+ ~6 j" T2 i/ |- s' C2 O
$ P5 f: u [7 M* B1 I 首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。/ o/ v" h+ J% Z' D
( x4 W9 t! X% x
然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:
2 o' j5 W; U$ c+ Yhttp://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi
. o, h2 p$ v3 x1 X具体的安装过程请参阅其他文章,本文不再赘述。% m' l% l* N q
- _* o0 x+ l2 o" K' ?% ^& H
下面要下载并安装Apache环境下的ASP.NET模块。下载地址:8 w" m) `3 u) d8 v0 m: q" S
http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi6 G: a, S' }9 ^- R, O1 K
下载完成后双击打开,一路Next即可安装完成。
' b7 s' M$ q( Z" Z, F) d0 K1 t6 _8 q% F, e
为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:
, \' Q# e) P* m4 e) m% l4 x- O# b4 y& \: X
#asp.net: X0 }( I; j1 W1 \- u# W8 B
LoadModule aspdotnet_module "modules/mod_aspdotnet.so". C Y' }$ \" p e9 r8 \
! ^" G& ?- c& eAddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \
( I( v. k' F5 t x8 W/ h. n licx rem resources resx soap vb vbproj vsdisco webinfo 0 b* l( h3 |% {& ~
5 P% o; |0 Z5 h) r- }0 S6 X) S( h
<IfModule mod_aspdotnet.cpp>
4 W; k2 v0 U% o: M! b' }. e. [6 D& s$ [8 a% A2 n* X9 i# T
# Mount the ASP.NET example application
+ D2 K% I2 y! |) Q. v. E6 C, E AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"* q$ f0 G4 p4 V( ?/ P
/ E) C+ q3 M) T5 d, @) k
# Map all requests for /active to the application files9 D3 ?' k4 ~+ _0 y$ f; s( M: H$ h
Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
. ?6 |/ }$ x2 L# [% Y% S
4 g6 F. o& I( N% w8 w # Allow asp.net scripts to be executed in the active example5 g9 W( U" `1 M" h
<Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">% q9 w: }& A: b* n* Z+ m& k
Options FollowSymlinks ExecCGI |7 f% _- R: V6 W; p: n) [
Order allow,deny7 \9 _" x% p3 Z& O H" Q4 R
Allow from all/ n7 Y9 j8 B/ y
DirectoryIndex Default.htm Default.aspx/ |1 l: G9 E3 ] g* N: J! x
</Directory>
/ Y7 b) P5 s, f) f, |. J5 ` m" X+ r, P9 R) h: Z: L- O
# For all virtual ASP.NET webs, we need the aspnet_client files % |% d J+ T7 M3 U w5 W4 A
# to serve the client-side helper scripts.- }; A! i8 E/ k. b* p) S: J, ^
AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \& B# b3 P* C% ?2 w5 t
"C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"
4 A. a! E) M6 m- w+ V" O* P4 f <Directory \
" q Y3 X* ~" K+ e2 a9 Y "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
- ]4 ]0 x3 q1 h5 \ Options FollowSymlinks
" J0 d* }& r9 R0 w9 O Order allow,deny }3 q" S+ d h* Z5 `1 O
Allow from all& N& V: Z. M' K7 \: W
</Directory>/ A) J; O8 X, W* W: i/ c1 f0 w
- w: G4 o; N& d+ ~& Q</IfModule>
' Y, I# a2 P$ Q" p) [
6 ~* T* e2 L4 { 其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。
% t+ e7 F+ E6 L" d# |& O. l. W4 c2 y现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。) f# R1 D: v. _& v$ [
6 P) z+ K& @1 w X |
由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。 |
|