|
|
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。: C- |% t$ [5 e$ y6 }
.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。& Z% B% u+ e/ G0 F1 B, G, Y
下面就介绍让Apache支持ASP.NET的办法。
+ m. { x3 e6 |7 y: k' W9 n0 ?$ ~' O8 d% N, x3 }- t
首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。; e* k) T; c. A6 v
# B4 `8 R: `4 E& S
然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:
$ R' F) h, j" X! Q, I: uhttp://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi
% D, q, h% g3 s5 [( F) P/ g! e* j具体的安装过程请参阅其他文章,本文不再赘述。
. S# B0 Y5 |* k6 _( R" Z. S# t- `0 a- e$ Z( e, {, ~
下面要下载并安装Apache环境下的ASP.NET模块。下载地址:3 ^& P3 a) u- Z2 Y
http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi
- y2 u; H& w: z& P5 f6 I$ X下载完成后双击打开,一路Next即可安装完成。
2 d' l( A. e, |7 X! O
1 G1 K9 t9 v; y& S 为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:
d1 [0 R7 J2 i9 |2 R9 b' h% N8 X" r: Z& A$ r% |0 a
#asp.net
- D g7 U b( W5 b, NLoadModule aspdotnet_module "modules/mod_aspdotnet.so"
3 P. R" w$ s" V( N4 K
4 K/ Q2 N: d5 X1 m; a) S9 c b% ^AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \( {6 h+ j o& v+ \2 Y j
licx rem resources resx soap vb vbproj vsdisco webinfo ' e0 a7 H0 \: H9 b; O
/ \6 j0 R' w+ v
<IfModule mod_aspdotnet.cpp>
# k" O' G/ j7 k% X7 g8 \( N% T
6 e, Y2 e2 A- V. k4 }- t # Mount the ASP.NET example application
1 _/ s% ^% V! H" H AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"/ Z7 y9 Y* }5 L |% P
6 W" C {% e6 P
# Map all requests for /active to the application files
! E& t5 c# T7 z* h, B Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"7 i+ p8 d. K' K) X, d# p
$ K ~+ Y' y, `+ H" P. [; Y
# Allow asp.net scripts to be executed in the active example
5 c: @6 G& K( N+ M <Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">
) h) }. K% z( C1 i F% P Options FollowSymlinks ExecCGI
% U0 A% G A8 W. p T Order allow,deny
4 S8 b$ }6 v, x; ]( c$ z Allow from all
" P6 \2 t9 h" T DirectoryIndex Default.htm Default.aspx- x+ E1 {3 V) g: _) [+ q
</Directory>) Y8 w+ H4 ]2 y) v3 ~( A' L- {
L: T; W: y/ s2 [
# For all virtual ASP.NET webs, we need the aspnet_client files 0 [5 e0 [) u+ p6 q: H |, _) S
# to serve the client-side helper scripts., J' k. y: Q8 g
AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \9 @3 A S" f; b- @7 s& c; Y) F
"C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"
$ b: S" h1 J* h3 E1 ]8 O. ^ <Directory \
5 ?& j4 Y) `, J, u: f; q; S+ m "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
- ?* i5 R, q: g) B. _- t Options FollowSymlinks* K. h& F/ Q9 g& l/ f
Order allow,deny
S7 I+ ^+ d" @ `% U$ V4 I% U+ D Allow from all7 f# [5 A7 ]) A; v+ q8 x
</Directory>1 K. D( x2 i# n/ t2 \5 W; q
$ A' h$ S `7 `. b- O' j9 C' N- y
</IfModule>$ p* m5 Y0 H* J
% @1 X: X' @0 E5 U# _4 @ @9 Y 其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。0 C6 z8 W, D2 _6 N1 o/ b. T
现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。
, _) ~: a" A0 K3 G. b5 q% G5 e. v$ A9 K4 Q( ?% w
由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。 |
|