|
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。
z% i4 u3 \* j# {+ z.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。
0 Z2 q% U2 i; k( L& ~# k下面就介绍让Apache支持ASP.NET的办法。) I* D# w# S0 R3 x8 B% k1 j
D9 `8 d* G; I4 V6 _8 P 首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。
( p+ P R! k9 l. C& B" j$ [# d, o4 S) v
然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:
4 L0 G: e. @9 B* X5 i* R; p0 O. s$ Fhttp://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi
7 t$ n* F, |# r% u- F8 ^/ Y具体的安装过程请参阅其他文章,本文不再赘述。* z0 h0 x- c8 ?8 P
) r/ p) y% \8 y) d- O5 k 下面要下载并安装Apache环境下的ASP.NET模块。下载地址: d# N9 |3 T: E [* \9 u7 m
http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi) y/ V3 g D8 c6 m8 h
下载完成后双击打开,一路Next即可安装完成。$ P/ h7 M+ ?5 r% j1 [4 `
% c4 a; t% l0 G% F( A' w) J
为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:! @+ a/ w* B, t; N- S* C
6 W& U2 q3 S; X7 I
#asp.net
$ Q) K) J. u/ e; `& sLoadModule aspdotnet_module "modules/mod_aspdotnet.so"
* j8 v, W/ Y" _. [5 m1 {. d" w) B' h) r
AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \
9 j0 D* k" T1 V licx rem resources resx soap vb vbproj vsdisco webinfo
/ M5 A2 ]$ K4 I
7 g4 F/ _, ` g3 q W% _* _" Z: a) e<IfModule mod_aspdotnet.cpp>3 c% }4 o7 @$ g( s" q
( C8 H3 A# f) f; p1 o6 | # Mount the ASP.NET example application; B- w& h# I3 O0 I
AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
! d. Y6 H7 \4 k4 E* L
; R* Z: r d" |9 U # Map all requests for /active to the application files2 ]/ b! o' U9 a
Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
6 M: p6 P P% h( P& ^( {1 i6 U% i8 ]2 E4 y1 k+ M8 S
# Allow asp.net scripts to be executed in the active example
( @1 ~, `, J! B6 v/ E6 { <Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">
- l$ [$ y6 ~" @: J* M4 K Options FollowSymlinks ExecCGI
2 _! `+ \. `- y Order allow,deny$ P0 |; X, C1 P
Allow from all# _/ A# U% z; r
DirectoryIndex Default.htm Default.aspx/ y3 b- A# s- D
</Directory>
& A+ w8 F6 G; P% J; t5 Y2 J2 |% f- i1 I$ F6 |; c$ ^
# For all virtual ASP.NET webs, we need the aspnet_client files ; ~+ ~* K( z6 O3 ?. ^
# to serve the client-side helper scripts.
/ U1 [& z: A: {. D2 n7 A AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \4 H/ K3 }8 I6 }
"C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"3 j) L# W& j5 {3 n) G6 a
<Directory \
! e9 ]& q/ p ?" o+ K "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">3 C2 K( Y' g# C
Options FollowSymlinks9 \3 ?, p+ V- D- T" T0 o
Order allow,deny
0 K; S3 c% I+ Q; F Allow from all( ~+ H; U$ m, m. F, f
</Directory>7 c8 E( p1 ]2 \: ?9 K' W6 ?7 W
& ^$ D5 Y+ c4 B</IfModule>- @/ g0 g5 N! h4 L+ G
- P+ z# m& a, t. [
其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。* p8 {! k& v& `$ I8 T8 ]
现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。6 b8 E) D) {- J' ?
- C# X/ f' H2 v& c" v 由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。 |
|