|
|
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。6 v' y0 {' p2 v4 [6 l
.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。
5 H7 r; P1 H9 f下面就介绍让Apache支持ASP.NET的办法。
5 A7 P( M' _+ ?, M3 j& b* _1 E1 r. `/ m9 {4 b/ w1 y
首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。
/ B# |4 z5 _' a; C' e0 W3 J' l2 r
; J7 q9 J8 G: f+ W8 p 然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址: h Q8 H' {. S+ p- q \4 T9 e
http://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi
; B- ?- ?" p1 s/ s8 g6 W0 y& ~具体的安装过程请参阅其他文章,本文不再赘述。
0 _+ Z& A9 ~0 X, J- v @6 g0 y5 Y1 P) w) A
下面要下载并安装Apache环境下的ASP.NET模块。下载地址:, q* b0 S) n; t/ F
http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi
4 \7 l. E9 D- o9 Z, Y下载完成后双击打开,一路Next即可安装完成。
: w' g2 z) v+ |) v, A% y8 {) w" S, H7 q* G* Z8 |# d
为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:
/ A! e3 J) D$ M7 T: d0 a) u3 o* }* I4 h: w8 n
#asp.net
" J$ Z) g* i. ELoadModule aspdotnet_module "modules/mod_aspdotnet.so"; G- m e+ S. M/ q! M
N j. ], U# v% d5 n7 h0 F
AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \- t: s( {* G! m+ P
licx rem resources resx soap vb vbproj vsdisco webinfo
8 p. O8 q. g: F* h! C
5 `! N3 r3 U$ [$ {8 ?4 m<IfModule mod_aspdotnet.cpp>
6 o6 t6 M! P& p, j. H( u- G
+ @. ?8 o; L) w& _) ^$ L # Mount the ASP.NET example application, q$ `1 z6 @3 w% [' g: V- J
AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active". {" k2 [ R7 @1 I4 h, A; D
- F) Q: R# z5 [; N: K. F3 K' m B
# Map all requests for /active to the application files) k9 J# p) ?. b: ^
Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"5 N9 V# c' _. O \9 ?5 s1 I
6 @& r0 i8 _% y8 o # Allow asp.net scripts to be executed in the active example
5 `5 ]% d* ? z! h$ p3 C <Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">4 M# x. m7 u+ ]$ T) F$ b
Options FollowSymlinks ExecCGI
/ O- Y4 ]2 X' Z3 o. [ Order allow,deny) ~; m; b; j! e0 o9 ?7 }
Allow from all
1 d0 S1 q- P0 \ G1 j# V DirectoryIndex Default.htm Default.aspx
; w) s v4 J {4 ^ </Directory>
( {# w9 s6 @ B) a2 @6 M9 t) I7 B4 j
# For all virtual ASP.NET webs, we need the aspnet_client files
, X9 |0 |2 f" V. d/ _0 j% L1 w! H # to serve the client-side helper scripts.% x' Z* L9 B, E! U: R; _! ?" C
AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \
6 Q5 e- d4 r- A* e* u( j! ] "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"0 K& u+ j3 C8 Q: d9 Z( l' h) @
<Directory \
& V2 b6 V) D4 d) \4 o9 A "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
4 Q6 S: Y& p% s3 g# y) w Options FollowSymlinks
+ ^% y/ ^9 ~9 s Order allow,deny
; r& ]! |: s K( J Allow from all) f, [$ O7 |8 g9 k1 D& f( x9 F
</Directory>" M3 A% T% Q- a$ v, T
, B6 z. o2 N, V, ^4 y1 |4 u
</IfModule>
# y' n* A$ v4 o' E# y
! m# w( r2 Z! B- m 其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。" V5 }, I; g6 ~6 X" r+ D. ^6 G4 |
现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。( E4 q0 ?6 U! f9 B9 v1 m& q- {8 O
0 d" b$ D+ B* o4 R+ Z$ N4 J
由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。 |
|