|
|
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。 p5 `. U4 X4 l6 V7 k' h
.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。
4 d9 a% L/ b8 n0 D, f; u下面就介绍让Apache支持ASP.NET的办法。
0 E+ C3 a; x& C5 c8 u) U" P( ~* i. {+ Q
首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。' j+ b$ K! E6 v! ~5 n
! F$ Z! T5 b8 ]4 n4 z 然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:
# u9 \$ f6 r, ?; b# B/ i* Ehttp://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi
; D8 m; ~# S2 ?) t* I; F具体的安装过程请参阅其他文章,本文不再赘述。9 H+ x( d- p; J3 l O3 ?
. v8 I/ T; v& O. F; S8 v 下面要下载并安装Apache环境下的ASP.NET模块。下载地址:) Q! n# |# R6 [% U( P. q
http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi$ n. X. C8 }) G0 ` y: o
下载完成后双击打开,一路Next即可安装完成。1 w0 p: w0 n! {% B
. ?$ p$ ]$ }, W5 \4 G, _ 为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:
7 I/ k2 H- K% _0 _ L, S0 g2 |3 K: e$ d8 j" B
#asp.net- G0 x, C+ P, D" N
LoadModule aspdotnet_module "modules/mod_aspdotnet.so") a5 _& R5 i8 \; u4 y
# f0 L* j% H A, _
AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \
# Z5 K) O& E2 m$ v licx rem resources resx soap vb vbproj vsdisco webinfo
$ s- y& C/ |+ G8 Z ^6 K: S/ o+ U5 K/ n! V
<IfModule mod_aspdotnet.cpp>& F/ c3 ^5 K9 @- g) Z
1 [4 q+ j- D6 u4 Q
# Mount the ASP.NET example application9 C* [+ V$ T- ?+ Y' Q6 I5 e
AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"9 k5 }6 E7 o. d! a
5 C' P' X' c" P6 a6 V8 F' i$ @ # Map all requests for /active to the application files l( A! U+ Z/ c, A
Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"/ x5 U- b! E4 p) G2 v. H, m) w
0 l6 I: Q" b0 K/ T7 {5 M8 b Z
# Allow asp.net scripts to be executed in the active example
& I6 c1 k& J( ?2 N+ c <Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">
) t. M7 @8 A' C% A( P# z6 }# b Options FollowSymlinks ExecCGI
: ~+ E7 f4 A6 O. ^4 Q% _ Order allow,deny: D0 C4 p5 c! V0 \+ G) k
Allow from all
* S5 l; V( D: {2 C+ ] DirectoryIndex Default.htm Default.aspx- k- q- G$ |1 k, M1 w
</Directory>
9 `5 v8 w* y& a8 n( E9 {% z A* {+ P( d; N2 A7 c I+ w, b' M
# For all virtual ASP.NET webs, we need the aspnet_client files 0 f5 j% k* k" G7 b/ _9 B
# to serve the client-side helper scripts.
$ B% A# G) T" v2 |# i' A AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \( k0 F5 h$ [4 H' d8 A7 z+ ^
"C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"- z. o* `, D6 K/ h Z7 D
<Directory \2 |4 @5 s9 { i, b( C
"C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">) {) k6 r+ G0 R( K6 M* i
Options FollowSymlinks1 {' O. R) s0 x/ e) C3 D3 E
Order allow,deny
* V! Z% W& o8 c) @$ S Allow from all% X& A$ g. E, X, V P- ?
</Directory>3 K9 E. r1 v% S9 p( v: D! { L/ C
( m! n* k n9 ]) z5 \0 [</IfModule>
0 i; u$ ~) ^" e7 N: n, [
! ~& p" a; y2 R# N4 a" F' R* v6 ` 其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。$ q9 m' J2 g+ D1 _# e% r
现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。5 Q1 Z5 G. P# y4 X# H- n' p8 t
% b: p, t, D3 f8 v, q
由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。 |
|