|
|
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。/ z: a. {& I5 q0 j R
.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。8 @ [* @) K- {* M6 J0 c
下面就介绍让Apache支持ASP.NET的办法。& X _9 r* h- I* ^( r
: M( x, B& y! O4 ?$ [8 b1 P( b2 T
首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。' U1 s- b0 ^* [* H$ r8 ]
; r3 f# q/ _8 K0 P8 ?. d
然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:1 |7 A# W# N; ~4 j7 M4 e1 ^6 h
http://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi
* O3 T) Q% q( T% e' n- K5 F. `具体的安装过程请参阅其他文章,本文不再赘述。
* |1 Q/ y' H* E- \4 a* a4 B4 ]# a# z+ t/ p
下面要下载并安装Apache环境下的ASP.NET模块。下载地址:
" V" u# q# f0 H4 \) z5 s* ghttp://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi
. \/ Y4 ?$ S/ s下载完成后双击打开,一路Next即可安装完成。% \- v$ W9 w" Y' Z0 G$ V) f. A6 l
3 C! E3 z& m$ ], e1 y! W( ` 为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:7 {7 R; K% d& {% A5 w
- C/ M3 b! w/ I' u#asp.net6 I/ I. u7 j5 D
LoadModule aspdotnet_module "modules/mod_aspdotnet.so"9 Z3 J3 D- @% ?* ], _
# \. h# T! X' Z/ j) X7 P6 b) q6 O
AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \" Z) |% x/ o7 Y7 K' X+ b4 L) o
licx rem resources resx soap vb vbproj vsdisco webinfo
6 K/ f; @% ]" C; c7 a# R1 X
6 {1 Q1 G$ d% C5 x# Z' ~<IfModule mod_aspdotnet.cpp>* { T2 k/ L) B+ v! {% |) h: W
: u- V3 m5 D) r # Mount the ASP.NET example application6 D- R3 {7 |, N( u
AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
0 I, ^2 {7 e+ ^' S2 H0 \* L! j: f% d7 n# y+ B
# Map all requests for /active to the application files
7 x( ^% k, ~0 R E. l* G Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
& t- G" h4 j2 U3 q/ X& K5 p3 L$ _3 `- b/ L0 h" \; S1 g5 j9 G
# Allow asp.net scripts to be executed in the active example3 ^! H" Z8 t+ O' J
<Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">
4 ?: S( o7 s I3 U9 W, [2 b; b Options FollowSymlinks ExecCGI3 J. F! T! a8 ?# E- H1 r r3 O
Order allow,deny/ q+ j& Y, P/ {% n2 Z1 T3 \
Allow from all+ {! Y. n ^( L- k2 W, B
DirectoryIndex Default.htm Default.aspx, {3 t9 c) v( l% K; \( q# ?
</Directory>2 e# N* y: p% T. q, w$ I- v a
8 O" \9 u6 a2 x. l) K
# For all virtual ASP.NET webs, we need the aspnet_client files
0 z3 L; ?, b2 x2 l/ h7 k. D # to serve the client-side helper scripts.
q1 _/ m& J) H1 R# k0 F+ d& r AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \! `. Z- p& g/ K4 M8 y# H0 p
"C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"0 b1 c! A( d( j7 ^* j
<Directory \0 ?# @2 Q+ n$ ?! _4 X
"C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
# ?1 \# h# I# R. a1 Z! h9 V5 [ Options FollowSymlinks
/ a' Y- l$ m; \6 K: s Order allow,deny
: k$ r8 t8 T- O$ u: N# `" D Allow from all
6 z. Z- g- J2 Z+ b$ b6 m </Directory>0 h- A& _' [$ ~8 n/ ]1 |
! u8 E$ M% E5 [9 U
</IfModule>" d1 Q- C9 }# m' E/ z# l
; D1 L* P s" c1 L% R) \1 f8 }# |
其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。
: P1 I8 V% i7 w4 o9 R现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。
2 P, E \" ~" M! `1 P
0 V& ^. r# O, Z- l% I( m 由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。 |
|