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

让Apache支持ASP.NET

[复制链接]
发表于 2006-12-17 18:33:15 | 显示全部楼层 |阅读模式
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。2 _! d% B  k& F& U
.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。
$ d- M5 n9 A/ M0 J4 h, K! g% u7 N下面就介绍让Apache支持ASP.NET的办法。
& R" Z# J( G8 L1 c$ X( O, z/ n) k# U8 C, v& P1 f; e$ L% b5 D3 N' F
     首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。" I8 _2 p* Z7 M2 {: D  {! L1 g6 l# L8 s

1 c0 a" U, x/ h& `; o     然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:& E' }9 ^  P  ^5 Q& @* ]4 o& G
http://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi
* D& a& ~' p! E) k6 d/ v+ `具体的安装过程请参阅其他文章,本文不再赘述。* M; H: b) d5 C9 H2 t: i2 m/ U2 c

4 D! D8 N  _+ _3 h! F! V. t( @     下面要下载并安装Apache环境下的ASP.NET模块。下载地址:% J) p+ r* y7 e* [8 D, u( H' `+ ?
http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi
- [3 g6 _9 l  M" ^4 z: q+ ]下载完成后双击打开,一路Next即可安装完成。
( D* I5 ]4 L# ?7 Y4 U. j$ M5 z+ A" \7 W
     为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:* ?" n' N2 j; W: h4 c
! @9 x2 g3 h, d( o& [. J
#asp.net
7 ?+ d% ^9 V& W( H7 m. W7 FLoadModule aspdotnet_module "modules/mod_aspdotnet.so"
% |' m+ ^2 R7 a5 S7 |7 I# G2 @5 U7 U( E/ d- m
AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \
4 h+ f% v& P: h' ?/ J5 ^            licx rem resources resx soap vb vbproj vsdisco webinfo
! {$ X. A! w* l5 V9 g# E8 v$ F. [% T
<IfModule mod_aspdotnet.cpp>, X& @2 P7 Y+ |

1 S# Q1 h5 b* h, }9 u0 h  # Mount the ASP.NET example application
" K8 w/ F& D! F% B; C  AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"5 Z* e7 G3 y' D& u# @$ v! K$ k

3 o9 N' E0 t0 O; e( [# z+ D. h  # Map all requests for /active to the application files
6 V9 H- _" r. _& ?  Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
+ G& I2 [) R  b- m- f# P( K
2 i( ?/ g% |4 W) G6 v  # Allow asp.net scripts to be executed in the active example! {; N- }$ V8 T; I6 S
  <Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">4 _% C6 _8 J9 a; U6 `6 W+ R
    Options FollowSymlinks ExecCGI
6 f$ P# J8 w5 ~/ |8 q1 x& @    Order allow,deny
; v5 U) ^) ~6 S2 T5 t    Allow from all
6 t3 k2 c& [" G7 z' m    DirectoryIndex Default.htm Default.aspx  P* |/ U! K" h
  </Directory>$ |9 m5 W; N4 G. a6 _% F" a6 Y# r% f

* W* N$ \6 N7 G4 s  # For all virtual ASP.NET webs, we need the aspnet_client files
% f6 o8 x2 _# m  # to serve the client-side helper scripts.) _* P, `9 h2 z- g$ ^' F4 j' [
  AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \
% E5 k+ d6 J: r      "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"
% W+ j  ?$ i4 \3 V' H& r( ~$ I, I  <Directory \, T: G1 j/ w' d
      "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">6 q5 `+ |; [2 b; h
    Options FollowSymlinks
  A( r1 G, i0 {- F  P3 m; F+ X5 u; u    Order allow,deny
+ ]7 q' |2 Z4 R8 Z% l    Allow from all+ l) Z* |" h; ^
  </Directory>
: n' t! }# ~2 j1 G. t
, }! k! \3 g2 J</IfModule>$ t& X% V, f& z, N2 C

1 m4 t  |, \1 h% P& L' K( x+ A& P: f     其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。* O6 s  h5 c/ E0 T. g: ]  n& w) v5 n' Y
现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。
0 E  y% d" Q" \, ~) n
7 @) c3 b, c# b; H7 H% [2 J% |     由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

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

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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