|
|
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。
$ N; ?- H' r, y" D9 {' n! c$ ?.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。# C# e. L# \/ r8 K
下面就介绍让Apache支持ASP.NET的办法。
2 V4 F; m6 G; h5 H
9 v, e, @4 R$ G$ ~: A 首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。+ U/ b% s0 p" R6 i
) i9 G3 z: f) T2 J# O2 R 然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:* a) ^1 w$ {7 P: E
http://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi
9 i/ u% `6 s3 y! Q具体的安装过程请参阅其他文章,本文不再赘述。
* B. a; y" t \2 }* ~
0 M: x. K5 N e 下面要下载并安装Apache环境下的ASP.NET模块。下载地址:
7 f" x v+ M% W# A: n0 S! Y9 h [http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi8 z% c! G3 ]6 f y2 P5 h( z
下载完成后双击打开,一路Next即可安装完成。
4 a! f7 v) ]% L1 C
0 E# v, q! U& @ 为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:
4 T6 ~4 R' t9 R/ h0 L: q4 q# B H3 Q; b8 B n8 I" k1 P' ?! w$ C
#asp.net' b0 I: F) G& G* L9 v* V% B: o
LoadModule aspdotnet_module "modules/mod_aspdotnet.so"
5 D# L" A! w. Z
# }; _2 r( _3 K# \, h! `/ rAddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \
: g" P0 H5 [ v: b: `, }9 d8 O licx rem resources resx soap vb vbproj vsdisco webinfo
; f" l. I! u- b9 D1 O2 w# L1 K. m' ?: {# v8 [
<IfModule mod_aspdotnet.cpp>% l3 G4 \6 }4 R. G2 W. U4 u
! l4 b( ?7 n( ? # Mount the ASP.NET example application8 u7 H( ~5 ]8 ~. o8 c% O6 v% A. b2 B
AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
6 @9 }( P C1 z+ Q. b+ |+ j
) `2 p8 J/ }! X. C) {) f # Map all requests for /active to the application files& |! [8 H" }* h- h
Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active", r% e& ~# A: i4 v% Y
! o8 Z- H3 P) K3 O4 u4 \1 I* d6 {
# Allow asp.net scripts to be executed in the active example6 X" |* t+ J- B; m& p
<Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">
, u# b( C3 n. G) P6 |0 d5 c1 F Options FollowSymlinks ExecCGI
+ P; k2 @+ f% p* g5 W; _ Order allow,deny
( P. U# K E2 T0 g3 ` Allow from all A9 ~, `+ ?/ O" ~9 J: `4 U8 L$ p
DirectoryIndex Default.htm Default.aspx
0 K+ J( C( y; x3 B8 K. U A </Directory>( |5 H. E" u {; l2 a- V
: U6 Z5 b1 s' Y# m6 a8 l # For all virtual ASP.NET webs, we need the aspnet_client files + {& m. m! k9 n1 j9 i
# to serve the client-side helper scripts.
" }, P- I" b2 N4 w; o+ C" B AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \
5 _' w8 m% E/ {, ~ "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"# l ?& t$ p# h
<Directory \& M8 q6 ^6 I4 K+ r `' |& N
"C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">7 c: V+ u) \3 v% W4 D/ ~% R4 m. Y
Options FollowSymlinks
( ^) a1 m1 K- k4 p+ v7 l* v. S) A1 r Order allow,deny
5 r/ n9 N, j0 Z0 O% |' z Allow from all2 R/ c- d7 R4 |" n
</Directory>7 Y& b3 `2 Z0 |) i; ^
1 O8 U: \0 E+ {* l/ ]</IfModule>- H" J M% e" N) y$ b6 b% G; v% f
0 p. l" g4 m) q ~. i
其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。
/ N: h$ k' K! R; `6 X现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。5 I( c3 s* O# _3 @
C7 f4 J z r E; O( v S 由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。 |
|