|
|
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。0 H2 K- D. ]3 Z o, T9 y
.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。
" V/ t& N4 D! u; i5 c: y下面就介绍让Apache支持ASP.NET的办法。
& Q( W; z/ q. g k
% U& L+ n* }$ v7 s7 o+ ^1 |2 U6 m 首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。) ]7 J9 g" a& N1 x, o# M3 @6 q3 Q
9 p7 L: `5 @" c2 B* b 然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:0 D5 S: A; g& s+ }7 `" G& M) F9 i
http://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi
$ E* O1 s! ?; P具体的安装过程请参阅其他文章,本文不再赘述。
% v' J2 Y& w. j* a! u
% _8 R- T* m% q" R9 C 下面要下载并安装Apache环境下的ASP.NET模块。下载地址:+ D0 E" R; T9 @) e9 b3 T& V
http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi% s/ @5 b6 ?; `# P
下载完成后双击打开,一路Next即可安装完成。% j6 [3 F# {1 g7 @# m- W
& I0 d* [6 i$ f6 ^7 F
为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:
- c3 Y% U& q& ]7 F. \0 K0 p* Y7 u8 P G7 I: f
#asp.net
% G3 ^) `! O! p0 Q [LoadModule aspdotnet_module "modules/mod_aspdotnet.so"
; @5 l* j0 D$ v7 R) b3 {0 U8 N9 U/ v+ d. w
AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \
# q6 \' |) E$ m licx rem resources resx soap vb vbproj vsdisco webinfo % S+ r6 b2 k. r' x% n2 X
( D9 a& t J* u) B; K% _. Z<IfModule mod_aspdotnet.cpp>8 x- q6 W' I+ z' {3 \# j3 b3 b
1 h- [- ]( s' r2 M0 b4 z T+ R # Mount the ASP.NET example application
, q+ K. e4 u' u. [; `$ t0 ~ AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
# l$ L' A! Y' K4 T+ l+ {5 C2 M! {: Z: b
# Map all requests for /active to the application files
3 V4 a+ x# e4 Y' q. T w- ^ Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"1 a" \1 r2 m0 ?8 ?& K
& y7 E$ L5 r" s1 e3 G7 h
# Allow asp.net scripts to be executed in the active example/ o7 R: Z0 I" o! n
<Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">
1 B3 j, J& `, `7 S; y d! g Options FollowSymlinks ExecCGI
* y& z# }% c& y8 L" w. V2 b( _ Order allow,deny
' K5 Y Y4 o, E% C5 E; _ g) r3 h0 v Allow from all
( Q k) U0 c5 s+ B DirectoryIndex Default.htm Default.aspx6 w. o7 H: }$ p! t+ P8 u/ u
</Directory>
6 F* W9 `4 B% l( n1 n! p. {# X5 o6 |$ d& g6 T
# For all virtual ASP.NET webs, we need the aspnet_client files 9 T! w( _: |* f2 z
# to serve the client-side helper scripts.
6 R( Y: ^& b0 o6 I AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \
1 ^4 D! o& c4 }: e: ^ "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"4 ?: p% f8 i8 Z4 E) X
<Directory \
. ~0 k( ^7 k& h r5 R( \( b "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">, ?0 Z) ]1 m) x; @& k5 f( a, x& ~$ c
Options FollowSymlinks0 v3 A, H, \1 ~% z3 Q
Order allow,deny- }0 h2 J+ K! ^5 J# X
Allow from all
4 D4 V* H3 g$ Z# f5 r4 p </Directory>: M$ z4 g) t8 C2 G
. @: s" K: G. p4 g* ]1 l</IfModule># J) a4 _% Z" n( U( S- H9 L
5 U: d" u: s9 ]# H I: D
其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。' `0 q) F5 U: S/ y
现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。; \( M Z% f* e: C) w3 @
8 b, x3 ^+ q' q- P8 Z
由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。 |
|