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

让Apache支持ASP.NET

[复制链接]
发表于 2006-12-17 18:33:15 | 显示全部楼层 |阅读模式
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下慢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-22 13:01 , Processed in 0.018119 second(s), 14 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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