|
|
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。
0 c; G) ?# [% X3 y* i- Q& r. w* d- k.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。( h8 {9 Y) k% I' d6 {+ B0 K
下面就介绍让Apache支持ASP.NET的办法。
% ~: C& Q/ ?: t, h
# |5 |+ V% i+ l/ k4 U" R4 O 首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。
7 U" L" H: K" F7 `2 c: T
8 O0 U3 p% d+ P0 @4 U' V 然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:) C8 U( d" Z2 j& g% ]& v! t) ~* J
http://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi! x9 p3 r: M0 d k, E8 H
具体的安装过程请参阅其他文章,本文不再赘述。
9 P. X% i/ J* O+ i& |( k \( y* N' k( f2 G& e
下面要下载并安装Apache环境下的ASP.NET模块。下载地址:* q2 {; Z5 v& H9 f' |
http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi' H2 E* E: A) }! a, r9 T- I
下载完成后双击打开,一路Next即可安装完成。5 \* R, m% b. S7 G: H6 i0 |! \
- ]# O5 w2 l3 ~7 m: t/ z% D
为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:
1 w2 c# L/ Y/ v; U2 @9 @9 I8 L/ B
8 D# u. A7 v7 u) V#asp.net
' p' o- S, I, \; L' J, l t1 n7 pLoadModule aspdotnet_module "modules/mod_aspdotnet.so"
8 _- o6 {3 f( e0 U- K
' C3 c. u( V7 O6 P* z7 `: L7 JAddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \3 p( x& [: e5 U
licx rem resources resx soap vb vbproj vsdisco webinfo
# ?- z7 ], G$ A# J) R; d+ w9 h* E: J& i8 |8 C7 ^% t* y
<IfModule mod_aspdotnet.cpp>
6 y6 Q% A. p, I6 w4 h9 M; `" P+ N( U4 L. T$ |, C
# Mount the ASP.NET example application
/ O! i# F% }3 K! r5 g* n/ D AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
; O' ]# y' [; }' Y4 k9 W$ A2 x3 b' a- y. L. j& K
# Map all requests for /active to the application files! y0 \( I) ~4 w" O4 t9 F7 z: z
Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"$ U; I! Z4 E1 u: s$ B+ I- x
5 `# U2 `3 x' Z v- Y) j # Allow asp.net scripts to be executed in the active example, l" D [4 Z. }/ X5 k* e' p
<Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">
) Q* u) g, v! y: d( D Options FollowSymlinks ExecCGI8 p1 [* Q$ f# M5 s
Order allow,deny
$ o" e, ?0 O. D- s, b; Q' F Allow from all9 L, ]% j. ?. L9 p, ?, Z, l
DirectoryIndex Default.htm Default.aspx; ~, E9 e5 z: N( T2 u+ l5 j
</Directory>' H( @2 Q6 r, P- C/ k
2 K" `) ~0 |# f8 B! d6 n # For all virtual ASP.NET webs, we need the aspnet_client files ! N9 U/ s* ]% f9 f: s+ i
# to serve the client-side helper scripts.$ n. s/ H% i) o% T
AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \, P; j m8 a, G! C
"C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"( _6 v* n' E- C
<Directory \
. l$ G7 P/ y/ u- b "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">& t3 V- n! v9 J" Q
Options FollowSymlinks
9 W7 Z9 Z# I! M; a; p Order allow,deny
4 w4 u: s0 W) X% y" c6 ~ Allow from all
& r, r1 } Y5 t </Directory>
' F K( h' b) b
# R& ^/ t$ F' D$ H7 e</IfModule>
. M$ ~5 d+ @- v, E: g. U* \2 [
6 \4 n6 d; L+ _ 其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。 @* r: C/ e: S7 ]+ O o
现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。
2 T2 A. {. p. Z/ C0 X2 w: a/ |( `5 O! b* C
由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。 |
|