|
|
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。$ _# p/ {6 E% }- Y' r
.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。$ _, f4 ]- f& T" H" o5 i
下面就介绍让Apache支持ASP.NET的办法。. G2 z7 a E+ V/ Z
0 e2 {* i2 {3 {/ ?# R7 ~ 首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。
( m+ v" N( i% f4 Z8 N: B/ V' F' C1 p& G8 B8 c
然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:8 L# T! u: e: k4 H+ D7 s) i" }
http://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi$ m4 w% m$ Q+ E* P& p
具体的安装过程请参阅其他文章,本文不再赘述。
) x9 m! `+ |8 T9 A7 x
# P r- J' m* `3 s' W0 A 下面要下载并安装Apache环境下的ASP.NET模块。下载地址:
2 Y1 i3 t1 O8 J- `http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi" k, l/ @( E% R/ y
下载完成后双击打开,一路Next即可安装完成。
" m1 W+ G- d2 D) T; Y
" o0 B3 L% u0 E) ? 为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:
7 l; S( C* g8 M4 V
9 J% n2 S j; Z6 a0 J" t#asp.net
( [" Y: o/ ~# C: l( i, ?0 ^0 PLoadModule aspdotnet_module "modules/mod_aspdotnet.so"
+ [* n& I0 @: u
' _1 r2 G* d! Z, \0 Q/ OAddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \
$ A0 z% [# K" q/ P/ Z licx rem resources resx soap vb vbproj vsdisco webinfo 0 E ^+ z( l4 |8 o# m5 R
3 n! n5 r- ~. U. n<IfModule mod_aspdotnet.cpp>
& s8 {5 l+ a# x, ?+ C- K
& F& j7 }0 [8 i- |; s: r # Mount the ASP.NET example application8 Q+ {4 d* A+ n$ j7 ]2 O; U
AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"7 ?. y4 }8 {5 a
( }1 R+ x& t0 a& f
# Map all requests for /active to the application files
, q$ R. w& M: e( R; x8 I Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
6 g" m% R2 g V$ d" ^2 c. j- g# S. @" q% @. ]* i
# Allow asp.net scripts to be executed in the active example
2 C. }! A( Y% N* X5 k <Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">- _% w, U- L7 p! E9 A
Options FollowSymlinks ExecCGI: _2 M* V# O' U
Order allow,deny
! M: V3 o |$ ]9 M Allow from all
; f, N y: |3 ~2 l* j* K8 s DirectoryIndex Default.htm Default.aspx
4 E7 ?( J8 t& Z% q </Directory>, }# ^5 \8 T. ^. R( x9 |0 D* L6 f
/ b$ L# l; F0 h% X( s, x
# For all virtual ASP.NET webs, we need the aspnet_client files
+ y2 k+ i* E5 U* Z6 [5 F # to serve the client-side helper scripts.+ i6 X. W& d" V4 \+ U& }: N
AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \
1 {% \+ z% o0 j5 }/ T3 e7 i "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"2 Y& v( u' b/ ^4 ?; t; Q
<Directory \0 H& c# D: g+ K* |
"C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
+ a, F8 ]1 B; U$ _" P7 N7 Z8 c# Q9 M Options FollowSymlinks5 y. d6 d, Y8 N
Order allow,deny0 |4 P5 V& B+ H4 ~
Allow from all
* i# y; j( _& R( u$ t9 r6 t2 h </Directory>
. T* o7 R7 A! C# q" Q. {+ e4 a1 C! x
' v0 ?& m8 l% c% y</IfModule>" a8 d f+ @+ }$ k* X
% ?) y$ H" q" Z2 e2 [
其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。0 N+ {# D, {7 f5 g7 D3 s" p
现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。% m' h0 [! N# l) e
+ w; Q( k8 f: L5 m! u, k
由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。 |
|