|
|
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。% C. ?: H' [; p! M
.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。( Q2 n* y1 U8 U; v# Y
下面就介绍让Apache支持ASP.NET的办法。 _! Q4 S. U |, z9 C5 p+ C' @. o# P
4 D* @; [. t, i5 L9 d 首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。
( T+ b. i- v1 P9 [; F5 q
; |" H" Y- F7 g 然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:$ ^1 J9 @9 a9 b6 L
http://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi
" R8 h# e* O9 H. n* N具体的安装过程请参阅其他文章,本文不再赘述。/ c! m7 }. j4 d0 I3 S
5 v2 s7 o. W3 B 下面要下载并安装Apache环境下的ASP.NET模块。下载地址:
3 q: ?) R: p) ~4 e; P$ ~http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi" q* k. s" ~" d
下载完成后双击打开,一路Next即可安装完成。0 K. j; {* t6 u$ Z# |& v" Q
4 c* m% r, C, k }+ b, ]2 ^ 为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:
1 f$ |( s% C2 T5 ?4 u1 t0 \9 S* v+ h& |( n& z7 `
#asp.net" Q3 n: S0 Z3 ?$ L
LoadModule aspdotnet_module "modules/mod_aspdotnet.so"* ?& J+ ~+ T9 ^ k: G2 R, D U
2 h& L$ L6 s9 R, ~; s: z. }9 ?AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \4 z; }1 E+ S, G
licx rem resources resx soap vb vbproj vsdisco webinfo X/ V/ t5 T Q6 J
5 Z$ T4 t }& W% V; ]8 [<IfModule mod_aspdotnet.cpp>; T8 V& @* a' c9 s& B' T# Q
$ D+ d3 D V2 Y
# Mount the ASP.NET example application7 c6 h6 z) I5 L' C+ ~
AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"- Q2 `% O8 E1 F) C
+ H4 e/ C- r" D" O # Map all requests for /active to the application files5 Z/ @0 ~6 z1 ?
Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"% K# ?! T* \, \' X
; |/ R* R7 {" a! \% F& I # Allow asp.net scripts to be executed in the active example
1 G7 x1 F) @' V: `: B% Z0 {3 J <Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">
8 h5 d5 Q0 L: u1 v h Options FollowSymlinks ExecCGI
6 B* _# ~ m w! @4 \+ _ Order allow,deny- D/ O. Y, k3 d( E+ ~5 a
Allow from all- C _8 ^$ [/ _/ R
DirectoryIndex Default.htm Default.aspx% ~0 [; X+ G7 G4 W! Z4 V0 W; D
</Directory>4 t! `' L& ]2 |4 s
3 }0 o2 R# ?: e$ M6 n I$ C7 u4 n
# For all virtual ASP.NET webs, we need the aspnet_client files 8 D: H6 P; x. B! x' h
# to serve the client-side helper scripts.
* z8 Q) h6 j$ n! B: x: P AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \
- _# B% P0 F9 b2 J' _. ~" |, I "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"
; c9 C, w% V1 Y: W, u% t <Directory \
* q" x! E$ f+ P9 w/ ` b5 K& f( X "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">) {0 X! p3 s7 i0 }5 s4 O( s8 B$ l
Options FollowSymlinks) x1 V3 `1 |* ?1 d" {% O+ [$ F
Order allow,deny
( V3 s- o$ @# K/ B- g7 U Allow from all
& m1 m7 l2 B; V* L( j </Directory>2 L* g* C: g2 C6 i6 \$ x
4 C6 L$ k% S( R8 E+ a S" c</IfModule>
% D5 ]/ _( o% X1 B+ O" w4 y
& {& x" ^- ?) r- Y6 a 其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。
, U2 m: u* X' t" j0 a6 N ~现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。
5 v1 u0 S9 b* A6 O
4 @8 W x0 z. d' |& [ 由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。 |
|