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

让Apache支持ASP.NET

[复制链接]
发表于 2006-12-17 18:33:15 | 显示全部楼层 |阅读模式
Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。
: I; V; [: Y0 a7 D( T7 J.NET是微软推出的功能强大的开发技术,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。
! v7 P- w. U* Y3 b0 }7 x+ {' x下面就介绍让Apache支持ASP.NET的办法。' D7 x( X+ Y+ {. G

5 H: }, ]% n$ p! A. s. W7 [) I     首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。5 o$ S4 b6 P7 U. z  M
& V0 J" ^/ V# W' q
     然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。下载地址:6 q6 C4 _; g5 O( }" j1 r0 q
http://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi) p3 f; B9 c9 `' X; `; _5 e
具体的安装过程请参阅其他文章,本文不再赘述。& ~, F1 D% e+ p# \
' o3 Y) m! k) W2 X2 G' ~4 b$ X
     下面要下载并安装Apache环境下的ASP.NET模块。下载地址:
+ e1 i5 }$ Y% z6 G( o# [) v7 |http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi* ]. V: A! ]  E6 L
下载完成后双击打开,一路Next即可安装完成。) s6 \+ E$ U3 o% M
& i" e, C4 l2 F; o9 F
     为了便于管理,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:
5 o' [* R: l- J. v% O! t* f6 Q$ `5 a; F9 |$ E
#asp.net
: T/ S2 ?( S' m, K7 v, nLoadModule aspdotnet_module "modules/mod_aspdotnet.so"
$ p; \. H, O% }5 _% x
6 }, z5 N. H/ |& z! N( `AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj \8 z6 x& h& W$ W# L" U+ b
            licx rem resources resx soap vb vbproj vsdisco webinfo
" |$ N+ |8 {5 A$ H- V4 m* _& j4 p$ v! c, H2 j0 `2 O; I5 Z0 u: x
<IfModule mod_aspdotnet.cpp>
6 B& ^* E, V! b# H4 W
5 b* ?: ?! u# Z" N+ M+ B+ `( W  # Mount the ASP.NET example application
; d; D) L" M( n7 u6 l8 X$ B  AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"
# S& ^. D: r1 \/ \0 b
2 {. d" C9 ^* s. L  # Map all requests for /active to the application files* Z2 E/ @8 L% r- o4 R) V8 T9 [
  Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"5 H$ o, ^$ I8 e

/ }/ F& Q5 [7 H8 K3 P2 X0 E% e  # Allow asp.net scripts to be executed in the active example* {) f( t! q5 c* |/ Q: f7 X  Y- y3 i
  <Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">* f; r  u( T2 Y( T: G
    Options FollowSymlinks ExecCGI
! `: ]/ ~4 m) n5 w7 k3 {    Order allow,deny
! Z" ?( S8 L$ X+ m% d! q0 k    Allow from all, V; i# d# i8 n5 W. L9 _1 b& H
    DirectoryIndex Default.htm Default.aspx* `  s7 U7 _* U0 Z
  </Directory>. n9 |: j# E1 `

8 j2 P$ j/ L  N3 z; m% O' w# l  # For all virtual ASP.NET webs, we need the aspnet_client files . T. x  B6 z+ w: I! ?" x7 M
  # to serve the client-side helper scripts.
# C8 k, O) V& a* U/ _) t8 ?  AliasMatch /aspnet_client/system_web/(\d+)_(\d+)_(\d+)_(\d+)/(.*) \
% A# a' N! ~' I) t0 y/ b      "C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"
" R! [, L' A% o  g. S1 m' K  <Directory \1 Z9 f0 O; E/ g
      "C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">
" ], ]" W$ F, Z; U- C    Options FollowSymlinks* x$ r% S1 ]+ R2 F7 a9 q& F
    Order allow,deny6 E. ^, a- ?" b9 o! o. r7 d' g
    Allow from all
7 ~4 I, U6 h1 L' l  f) K: y& G  </Directory>! ~# b. Z, p! d9 K

- a1 y$ i& [9 v. [! t( B5 R</IfModule>- X& E, P/ I% e! }( k# U% n. b% u

; ]% f. F. n3 ^. d     其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。
4 D0 d# @* S( Z3 G4 D% d现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。- Z5 j3 F" h# t7 ?7 T8 `; @) H. [

& t; C' a) w2 `6 s# M1 A     由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2025-11-30 09:46 , Processed in 0.025731 second(s), 14 queries .

Powered by Discuz! X3.5

© 2001-2025 Discuz! Team.

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