找回密码
 注册
搜索
查看: 5736|回复: 0

让Apache支持ASP.NET

[复制链接]
发表于 2006-12-17 18:33:15 | 显示全部楼层 |阅读模式
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。
2 R  ^( P% \+ ]) K.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。$ Z" L* |% l% h5 F4 e! H& x- T
下面就介绍让Apache支持ASP.NET的办法。
5 p" K6 \5 N9 D4 K# I; k9 c' w" J  ~: q  r1 O5 }! M" T7 g. ^4 o# @% `
     首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。( U/ {+ l4 ^: h# E/ X

+ R; {" D3 D% j9 K2 u     然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:
4 u. `. ?" ^7 ~$ l0 thttp://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi& @$ l1 r& I- R. O: |
具体的安装过程请参阅其他文章,本文不再赘述。
2 K. ]/ V, }% e4 W+ [+ e5 l- i, m2 g+ Y: @
     下面要下载并安装Apache环境下的ASP.NET模块。下载地址:
' g- ~3 J# \, x* r- I1 C. phttp://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi
/ T3 L0 Q" L  y1 x下载完成后双击打开,一路Next即可安装完成。! U( ^! v6 r0 E

+ X" \8 I) u& [$ Y- J( m     为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:
% [+ g! {  |: W' w% V
4 k) K' y  r- i" s) r3 \+ ?* @#asp.net' m/ |. Q/ y7 L: @% k
LoadModule aspdotnet_module "modules/mod_aspdotnet.so"
  P4 H2 p9 F, `% i5 z: d4 N
2 O2 |" w5 r2 R5 z9 m9 j! E: iAddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \
+ c5 W; O5 i+ h% f            licx rem resources resx soap vb vbproj vsdisco webinfo
6 d* h. T2 O6 P( c% D2 P  v. N8 {8 q
<IfModule mod_aspdotnet.cpp>
0 }+ g1 Y( u- ~  v* z: u/ X- o
& T7 e. n+ J6 g4 X& V5 l0 A  # Mount the ASP.NET example application
( N% n1 F+ s/ I  F6 H' }. _  AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
3 B- s/ @0 n& Z# j
1 ]! y' q7 T+ M  O" h  # Map all requests for /active to the application files
+ S6 w6 h7 L- R$ z  \! J$ T  Y  Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"8 {4 [5 b/ {( F, S2 Y6 O7 {2 [, R
6 S1 U* M. q* Z
  # Allow asp.net scripts to be executed in the active example2 T/ P# m! a4 L
  <Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">
% R. q: ]0 d$ a! i# c0 p    Options FollowSymlinks ExecCGI% {2 Z4 B$ D$ _. m8 e2 v! p
    Order allow,deny
, R; \$ @- V8 @9 p$ v$ |5 x    Allow from all
, L* Y2 [& B& Q0 U4 d    DirectoryIndex Default.htm Default.aspx* s  s% z6 D* P7 ]
  </Directory>! e% g3 `/ g7 d& y* u
2 M6 W  p: C% x% r
  # For all virtual ASP.NET webs, we need the aspnet_client files 2 D: _' d% M# I3 _; x" r% y
  # to serve the client-side helper scripts.# p8 K3 K2 R" p5 w7 I  n# e
  AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \
9 n  m! [$ j: X6 \9 C' N      "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"* k8 Y* e2 C+ F6 z% q9 d" U% [
  <Directory \
" A  h  E, g+ M% n6 q' J      "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">" K$ }+ Q+ ]! {9 K- c& L8 z
    Options FollowSymlinks
; R1 A( v9 x' B    Order allow,deny
, n: j' V- u& f8 |    Allow from all
# y6 W9 e; ?1 v3 L! C4 F  </Directory>
" m8 r/ d) |0 H9 ^3 J0 Z. ~! `/ o3 H3 `4 A# q% ~( B
</IfModule>
! f. w- b( h- b$ A2 B$ a0 E* r9 O0 `- [1 i7 R/ D* V3 S% X# C5 q
     其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。4 U/ y0 G5 ~" k7 A# ]3 d9 B7 @
现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。
. M# O+ H; L8 E4 i  A* U* h/ A8 ~! x* F5 x" I- H" w+ B$ p+ b, q
     由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|宁德市腾云网络科技有限公司 ( 闽ICP备2022007940号-5|闽公网安备 35092202000206号 )

GMT+8, 2026-1-24 20:08 , Processed in 0.017355 second(s), 14 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

快速回复 返回顶部 返回列表