|
|
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。
2 A& Q% H. f- u+ N1 [.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。4 m* G. a# C$ G- z' a
下面就介绍让Apache支持ASP.NET的办法。; f8 K: H7 P V
+ [) g% d6 y. p) r0 q, q 首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。0 N. u# B2 t% E$ Y/ V
8 ]4 c* J) Z$ @0 q6 X W# _: V
然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:8 [( c: k7 s) G0 G) Z* R: `
http://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi
+ g% S- V: ?8 h4 J3 E& B# Y; F9 C3 u具体的安装过程请参阅其他文章,本文不再赘述。
. f1 L% E& l. A' G+ {
7 k$ |7 X" @+ n/ O. k+ f 下面要下载并安装Apache环境下的ASP.NET模块。下载地址:
/ M2 t9 _' H Z$ M/ ^; Bhttp://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi+ n, b+ p+ w& Z& }! @% |
下载完成后双击打开,一路Next即可安装完成。$ R- w. K: n: z
; p! b" X& u9 k9 ~ L 为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:, s! m- J, y+ [
! L0 }2 O" V8 P$ Z. X+ S
#asp.net
" L0 Q0 f1 w; S$ M7 n0 n, f- wLoadModule aspdotnet_module "modules/mod_aspdotnet.so"2 e8 h% G, I' D
0 M' G- \4 z+ K4 R4 A1 {9 S. Q% uAddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \! U. m' \1 i# Y
licx rem resources resx soap vb vbproj vsdisco webinfo 1 g' C* P+ T1 [3 ?) K8 T
3 n& B g3 V: l" V0 x0 }) N1 v: t6 R<IfModule mod_aspdotnet.cpp>! \/ t3 l; Y" }1 _/ e6 q8 F
, G! Z0 R* w2 |
# Mount the ASP.NET example application$ m& m( w7 b* x" R: Z
AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
& f1 c$ g6 E4 s% ^/ t1 r5 R
4 ~2 j( q5 o" B: a: ` # Map all requests for /active to the application files* U# t8 j- H" l! }3 w$ O
Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
0 F o3 Z2 a. f* @ d/ X( O. C: c/ Z E0 r. C3 n; A8 C' f
# Allow asp.net scripts to be executed in the active example! ?" o* I) j! c; z* [7 e; T3 ]
<Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">
/ r6 V9 T2 H9 ~3 O, I Options FollowSymlinks ExecCGI0 e2 Z0 k0 O# m6 }- K
Order allow,deny
2 P/ \9 H0 w& _' R! b Allow from all
; q. M4 h6 ~5 N DirectoryIndex Default.htm Default.aspx7 U3 y; z# Y+ c4 G! W& t& u/ T
</Directory>
7 [. B2 ^- ? q7 x% |/ u8 N) c
$ o3 E1 }, ]5 F$ G, @% ^ # For all virtual ASP.NET webs, we need the aspnet_client files
0 c6 h1 q* M5 P+ ~& k/ n' S8 a- Y # to serve the client-side helper scripts.2 r. i, P8 n6 _; b2 {
AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \
: k+ Z2 h" T, { "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"
( ]9 y" q3 `/ F$ t6 r <Directory \
. C+ d! v) z* V$ q0 B. Z "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">3 I* ]8 i% U5 H+ B3 T
Options FollowSymlinks
6 |; Y8 k D# Z Order allow,deny
& a: m a4 S1 k* d2 [' E1 I Allow from all
9 R1 U, Y F# R3 \ </Directory>7 h. p$ y% z* X. S8 t# O0 `
9 O' I/ ^7 W& W</IfModule>
- A0 a Q7 _. d7 x+ U6 R
6 v9 f! Y4 N4 C& p6 Q, @ 其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。) D; f& x l( \& K/ V8 A
现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。
( M3 \/ w2 z" Z$ V! v2 C# N: A0 ^1 B& r6 ?% O3 G+ [
由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。 |
|