|
|
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。' [0 t/ @% ~; D" D- {1 e
.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。
, \; b/ v7 h$ Y4 y" [8 G3 n下面就介绍让Apache支持ASP.NET的办法。
0 e. ?6 U5 G8 V
( p, G/ J t; a5 A3 q 首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。
7 O. ~; G$ H: j" A8 F. i0 x9 g4 Z- @
然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:
5 T* \1 R9 |+ shttp://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi- `# L- ^* A# F# h
具体的安装过程请参阅其他文章,本文不再赘述。
3 r/ Y8 d# W% J9 r7 I2 T, A- h" ?8 N" }" a; k2 E
下面要下载并安装Apache环境下的ASP.NET模块。下载地址:; x! W& }, a C3 \
http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi0 X+ u/ q+ b7 t% b, @% o7 L) ]
下载完成后双击打开,一路Next即可安装完成。1 ]/ j: A3 _; [: c
# r p9 f, P. U2 e+ J3 N
为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:
# q6 P1 C( r1 v* w9 r1 R
1 q& X6 q; t9 T4 o#asp.net
# ]- ?( K$ K! U2 JLoadModule aspdotnet_module "modules/mod_aspdotnet.so" A; ~& z! R( l7 F/ `9 M
$ v( A% m8 F! F: i( A1 v& W
AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \9 G3 M4 {3 | N2 r' J
licx rem resources resx soap vb vbproj vsdisco webinfo 4 K; L9 Z8 S8 Y# p
% {6 e5 A% }' Y E1 ]! }<IfModule mod_aspdotnet.cpp>. q [( V, r- z( B; t
0 L3 T, L' O& ~! p8 l # Mount the ASP.NET example application
$ R2 m. K4 `9 s( @* p AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"% I" ^+ q8 g& ]# E1 D% [: x! O
3 V" x, c4 ^, i( P/ f: s) E3 o
# Map all requests for /active to the application files
- s. Z; A( _! |2 k; y$ z1 p, T Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active". m/ _/ t9 {$ n& b" A# E( i( v
( c( t6 Z6 S8 e5 N" b5 S6 d. U # Allow asp.net scripts to be executed in the active example7 P/ J y9 G( x+ Z, j# \
<Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">% {2 X- {6 T" }/ {. w
Options FollowSymlinks ExecCGI
- b( N% l5 C" q Order allow,deny7 B. D: h& D i: v c7 z
Allow from all
/ I, l/ h. N$ s6 A/ g5 J DirectoryIndex Default.htm Default.aspx. u6 m2 _- T: G! Q7 O* L0 e
</Directory>5 z1 [- a% T4 o3 H/ v% X
c& X7 R( P- m+ D1 z1 ]1 A
# For all virtual ASP.NET webs, we need the aspnet_client files
f7 ]6 `: J* ~2 C* X # to serve the client-side helper scripts.
/ _: c- i; S+ h6 L AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \
: G( n6 o" V+ n, J "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"
# y S8 Z3 W! z: v* j <Directory \7 c; M$ E( j: _' |! X
"C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
4 w/ t6 f# x! {; m i* k Options FollowSymlinks
0 K% w: A9 ^% G5 g# f$ d0 c) }% [ ~ Order allow,deny1 |. g, X: q. V2 I! e
Allow from all
; u! F! T. z: `* J </Directory>7 _ Z; t: y( N1 I! a
; Q" u) ^( ]' @# ^) G6 e8 i</IfModule>
0 \+ B& n6 I; V0 K" e. o& i3 N2 c$ X; ]& y
其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。
5 _/ W a% h" J% M2 k6 T7 `* \现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。0 m% _# V5 b0 t1 b. j8 w8 j7 G
4 T, y/ @: \" O7 @* K4 {. J 由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。 |
|