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

让Apache支持ASP.NET

[复制链接]
发表于 2006-12-17 18:33:15 | 显示全部楼层 |阅读模式
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。; V( j9 W8 Z' k6 z+ Q) g
.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。1 ?+ v4 b) n+ u8 G/ z/ M
下面就介绍让Apache支持ASP.NET的办法。$ E) C$ A- h; y- R3 G% p/ B

1 F6 t" H7 u3 A( M  g     首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。" d/ X3 w) v. P" F/ L1 R+ e
7 l; j4 g: _) m% S
     然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:1 O6 w* l* C6 A
http://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi
9 r5 q$ s0 R' R6 S& ?具体的安装过程请参阅其他文章,本文不再赘述。
& J& q$ p! l. B) F4 y# X
5 c6 @% f( Z% {8 B: r     下面要下载并安装Apache环境下的ASP.NET模块。下载地址:2 S3 \, `* P# ]2 B+ s
http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi
3 w: w% e) _& v, i9 i1 g7 G, q下载完成后双击打开,一路Next即可安装完成。
8 E$ `8 Y0 L: X" O4 c
9 P1 Y4 y8 ^* @) Z     为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:
+ t" Z2 t  m+ D/ U0 I. A2 f
- a3 Z3 [1 p# w) U* |2 j#asp.net; O& [9 a0 c* I* `/ ^$ B
LoadModule aspdotnet_module "modules/mod_aspdotnet.so"0 ^; W( {: S; }0 r1 F# p7 p% I/ {

, g' n% m; g% D& X8 [AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \  [* v) W6 G" S  n! T6 {, d
            licx rem resources resx soap vb vbproj vsdisco webinfo
2 `% H, O! |* k! v% r4 {
# s" i4 n: A/ t0 I+ x$ h6 n: z* _6 g<IfModule mod_aspdotnet.cpp>( ]6 |# P9 D$ J, [( S. J9 V  R

+ r9 _  ]( Y: [! f$ X' w5 U- }2 G  # Mount the ASP.NET example application
' a# Z0 h9 [# R! s/ X/ ^8 R- K  AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"1 W8 P& G2 N  l% d

% m+ B/ a' o* ^. s* g  # Map all requests for /active to the application files
% j: M* s* x$ j. {3 |- p. S4 P, z  Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active": n7 b$ Y8 r0 O% V1 r0 d1 o5 O/ z+ }
' e: B: T+ R+ M" t7 o
  # Allow asp.net scripts to be executed in the active example
* @2 q2 d, t  p/ a3 C$ M  <Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">
8 ]3 g( a/ @  h' j) l& y0 B    Options FollowSymlinks ExecCGI
# u3 b; n# c3 _2 n9 h: ^% B9 [    Order allow,deny; n3 z9 ^6 E' R# \1 z  `2 G* u# S
    Allow from all' a7 H( A& G! q2 N& F5 x$ h
    DirectoryIndex Default.htm Default.aspx
( i% A! K7 q# O  y; F5 Z  </Directory>
. |' p  b2 U3 X' C( p+ c& @7 `
6 x; x5 O) K/ h% @( \( O5 ^  # For all virtual ASP.NET webs, we need the aspnet_client files
( h; P1 l6 N  U' M  # to serve the client-side helper scripts.
, n# w/ \' ], P# D; ^9 R( ~) u  K* g6 q  AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \
! a: \" G  M3 J2 i      "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"
2 p4 {5 a% W8 T& i  <Directory \
& e, T& a& z/ h+ C+ n, l5 `      "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
( H' ]  h# c. G2 w5 ?# O    Options FollowSymlinks
: \3 D' }& p& Y( ]) O0 Z    Order allow,deny
" o$ e- w" O' y1 p  h. h    Allow from all
: Z, [- P2 l: k! p% h6 t- t9 p  </Directory>9 l8 R, a! e/ [3 K/ i, h& F
+ t) V- [! D, y
</IfModule>
+ U6 v, G2 Q2 p) E/ w- \+ i0 v2 Q
     其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。$ `% D7 t, K; P4 T# N' u5 x
现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。
" \" |% t, F( d3 S$ o; }4 B
& j7 u4 ]" Z# {2 b  I: Y7 q7 ?5 Y4 }     由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2026-1-23 06:40 , Processed in 0.017327 second(s), 14 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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