/ 中存储网

Apache和iis的配置

2014-08-08 13:24:01 来源:kejihao
Apache是开放源代码的Web服务器软件,是最常用的Web服务器。Apache常用在unix系统,也有windows平台的版本。本文以windows平台为例,介绍Apache的安装和配置方法。

   因为Apache对asp支持得不好,如果您的网站用到了asp,建议您使用win 2000 server + IIS。

安装Apache

一、下载

   Apache的版本目前有两个分支:1.3.x和2.0.x。初学者用1.3.x就可以了。本文以1.3.x为例。

   在上面的网址里,包含了两个分支的最新版本。请选择后缀为“exe”或“msi”的安装文件下载。

二、安装

   运行下载的Apache文件,即可开始安装。Apache的安装过程很简单。只需要设置下面这个窗口:

   在“Network Domain”里输入域。如果用本站的二级域名,例如“test.xxx.net”,请输入“test.xxx.net”。如果用顶级域名,请输入“xxx.com”。

   在“Server Name”里输入服务器名。如果用本站的二级域名,请输入您的域名“test.dnschek.net”。如果用顶级域名,请输入“www.xxx.com”。

   在“Administrator's Email Address”里输入网站管理员的Email地址。

   除此之外,安装过程里所有的选项,全部用默认选项就可以了。

三、运行

1、Win 9x:

   Apache安装后,会在“开始”->“程序”里增加一个“Apache HTTP Server”的组。进入该组,选择“Control Apache Server”->“Start”即可启动Apache。

2、Win NT/2000/XP/2003

   在这些系统里,用默认选项安装的Apache,除了在“开始”->“程序”里增加一个“Apache HTTP Server”的组之外,还会在系统的服务里增加一个Apache服务。该服务被设置为系统启动时自动运行。

配置Apache

一、配置文件

   Apache是一个后台运行的程序,没有界面。所有的配置,都包含在配置文件里。主配置文件是:

     C:Program FilesApache GroupApacheconfhttpd.conf

如果要修改Apache的配置,可以用任何一个文本编辑工具(例如记事本)编辑这个配置文件。在配置文件里,以“#”开头的行是注释行。

二、配置选项

   在配置文件里的主要选项如下:

#Listen 3000

#Listen 12.34.56.78:80

   Apache的IP地址和端口。一般来说不需要设置,Apache会绑定在本机所有IP地址的80端口上。

Port 80

   Apache的端口。默认值是80。

ServerName test.dnschek.net

   Web服务器的名字。安装时输入的“Server Name”就是保存在这里。

DocumentRoot "C:/Program Files/Apache Group/Apache/htdocs"

这是网站的根目录。如果您想把网站文件存放在“D:myweb”目录下,可以把DocumentRoot后面的目录修改为“D:/myweb”。

Options Indexes FollowSymLinks MultiViews

   为了安全起见,请把上面的“Indexes”删掉。否则别人可以浏览到您网站里的所有文件。

DirectoryIndex index.html

   默认首页文件名。在浏览器里输入一个地址(例如http://test.xxx.net/)的时候,Apache会查找这个默认的首页文件打开。如果要配置多个默认首页文件名,请用空格分开。

ScriptAlias /cgi-bin/ "C:/Program Files/Apache Group/Apache/cgi-bin/"

   CGI文件存放路径。

三、高级配置

1、设置虚拟目录

   在配置文件中找下面这行:

     <IfModule mod_alias.c>

   在这行下面添加如下内容:

     Alias /vdir/ "c:/comexe/"

     <Directory "c:/comexe/">

     Options MultiViews

     AllowOverride None

     Order allow,deny

     Allow from all

     </Directory>

   这样,通过访问 http://test.dnschek.net/vdir/,就可以访问到c:test目录下的内容。

Apache默认开设了两个虚拟目录:“/icons/”和“/manual/”。这两个虚拟目录没有用,可以在配置文件中删除。

2、如何解决中文网页显示乱码

(1)在配置文件中找包含“AddLanguage”或“AddCharset”的行,在这些行最前面增加一行:

     AddDefaultCharset GB2312

(2)养成良好的习惯,在每个网页的<head></head>里加入这行:

     <meta http-equiv="Content-Type" content="text/html; charset=gb2312">

   一般的中文版网页编辑工具(例如FrontPage、Dreamweaver等)都会自动加上这行。

3、如何解决中文文件名无法访问

   在ie中选择 工具 -> internet选项 -> 高级 -> 取消“总是以UTF-8发送URL”。

   这个方法很麻烦,请尽量不要使用中文的网站文件名。

请注意:

1、Apache配置过程中最关键的两点是:网站根目录和默认首页文件名。必须要把网站文件放在所指定的网站根目录下,而且默认首页文件名必须要设置正确,否则将看不到您的网页。

2、每次配置文件更改后,要重新启动Apache才会生效。

windows下apache与IIS的组合

apache和IIS都是默认80端口,但是如果你不得不用asp程序的话,不要想着去用iasp之类的东西,还是在服务器安装IIS吧,安装以后把IIS修改端口,然后通过代理的方式来访问IIS,达到不需要显露端口的目的。

1、修改Apache配置文件,启用Proxy模块;

LoadModule proxy_module modules/mod_proxy.so

LoadModule proxy_http_module modules/mod_proxy_http.so

2、继续修改Apache配置文件,让Apache处理对IIS的访问;(这里假使你用的IIS端口为88)

ProxyPass /iis/ http://127.0.0.1:88/

ProxyPassReverse /iis http://127.0.0.1:88

如果你要使用虚拟主机来实现,可以用下面的代码,(这里是xxx.com.cn的)

<VirtualHost 211.154.103.23:80>

ServerAdmin [email protected]

ServerName blog.xxx.com.cn

ProxyPass / http://211.154.103.23:88/

ProxyPassReverse / http://211.154.103.23:88/

</VirtualHost>

让apache支持asp

1 http://www.stryon.com/下载iasp的win32版:iASP2.1.01.exe,10M左右。

2 确定您的win2000 server 已经安装了jdk,apache。偶装的为:

apache_1.3.27-win32-x86-no_src.exe

jdk140.exe

3 双击iASP2.1.01.exe,开始安装。安提示做即可。偶的安装路径为:c:IASP2101

4 安装完毕后,提示是否现在配置iasp。当然选择:是。

5 配置:

第一步:代理服务(proxy)选择:instant asp native servlet support

第二步:WEB SERVER选择:apache。(可以不管它提示)

第三步:选择apache的配置文件:httpd.conf的位置。偶的为:c:apache\confhttpd.conf

版本选择1.3.2X(根据您的apache版本选择)。

proxy:如果您有固定ip,添入您的固定ip。如果没有,那就添:127.0.0.1。

port: 这是apache与iasp之间的代理接口。使用默认(9098)即可。

server manager port:远程管理端口,选择默认(9095)即可。

第四步:配置完成。

6 说明: iasp在apache的配置文件httpd.conf最后加入了以下语句:

# iASP Setting

LoadModule iasp_module "C:/IASP2101/bin/apache/win32/1.3.20/iasp.dll"

Alias /iasp "C:/IASP2101"

IaspConfig server "C:/IASP2101/properties/server.properties"

IaspConfig rules "C:/IASP2101/properties/rules.properties"

7 通过更改httpd.conf更改apache的默认首页:

DirectoryIndex index.htm

DirectoryIndex index.php

DirectoryIndex index.asp

更改完毕后,保存,重启apache

8 执行:开始->程序->Instant ASP 2.1.01->Install iASP as NT Service

这样,iasp就被加到了win2000 server的服务中。

执行:开始->程序->Instant ASP 2.1.01->Start Instant ASP

这样,iasp就被立即打开。apache可以支持asp了!

例子:index.asp中写入此句:〈%response.write("我成功了!"%〉 ,保存到apache的网页根目录。

在浏览器中写:http://您的ip:apache端口号/ 回车,看到 “我成功了!” 您的iasp就安装成功了!

执行:开始->程序->Instant ASP 2.1.01->Start admin

您还可以通过http://您的ip:9095登录远程管理来管理iasp。默认用户名密码:admin。

9 嘿嘿。您安装成功了吗?

让apache支持asp.net

Apache是目前广泛使用的一种网络服务器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放
Apache是目前广泛使用的一种 网络服务 器程序,不仅在UNIX/LINUX平台上被大量使用,而且在Windows平台上也有许多站点放弃了IIS而转向Apache。 .NET是微软推出的功能强大的开发 技术 ,其目标就是与Java抗衡。ASP.NET非常适合于中小企业的Web应用,其性能较ASP3.0有了极大的提高。

下面就介绍让Apache支持ASP.NET的办法。

首先,必须要有Windows环境和.NET Framework的支持。此外还建议安装安装.NET开发工具如.NET Framework SDK或者VisualStudio.NET。需要注意的是Windows的版本应为2000、2003和XP。Win9X系列不能安装.NET Framework。

然后需要安装Apache。应该使用Win32平台的Apache,版本2.0以上。推荐使用2.0.51版本。 下载 地址:

http://apache.freelamp.com/httpd/binaries/win32/apache_2.0.52-win32-x86-no_ssl.msi

具体的安装过程请参阅其他文章,本文不再赘述。

下面要 下载 并安装Apache环境下的ASP.NET模块。 下载 地址:

http://www.apache.org/dist/httpd/mod_aspdotnet/mod_aspdotnet-2.0.0.msi

下载 完成后双击打开,一路Next即可安装完成。

为了便于 管理 ,我们在htdocs目录下新建一个active目录,专门存放.aspx文件。现在需要对httpd.conf文件作一定配置,在文件末尾添加:

#asp.net

LoadModule aspdotnet_module "modules/mod_aspdotnet.so"

AddHandler asp.net asax ascx ashx asmx aspx axd config cs csproj /

licx rem resources resx soap vb vbproj vsdisco webinfo

<IfModule mod_aspdotnet.cpp>

# Mount the ASP.NET example application

AspNetMount /active "D:/Program Files/Apache Group/Apache2/htdocs/active"

# Map all requests for /active to the application files

Alias /active "D:/Program Files/Apache Group/Apache2/htdocs/active"

# Allow asp.net scripts to be executed in the active example

<Directory "D:/Program Files/Apache Group/Apache2/htdocs/active">

Options FollowSymlinks ExecCGI

Order allow,deny

Allow from all

DirectoryIndex Default.htm Default.aspx

</Directory>

# For all virtual ASP.NET webs, we need the aspnet_client files

# to serve the client-side helper scripts.

AliasMatch /aspnet_client/system_web/(/d+)_(/d+)_(/d+)_(/d+)/(.*) /

"C:/Windows/Microsoft.NET/Framework/v$1.$2.$3/ASP.NETClientFiles/$4"

<Directory /

"C:/Windows/Microsoft.NET/Framework/v*/ASP.NETClientFiles">

Options FollowSymlinks

Order allow,deny

Allow from all

</Directory>

</IfModule>

其中D:/Program Files/Apache Group/Apache2是Apache的安装目录,应根据实际情况更改。

现在可以在active目录下放上ASP.NET探针。重启Apache之后,即可体验Apache下的ASP.NET了。

由于IIS和Apache下的ASP.NET都是运行在Common Language Runtime(CRL)的基础上,因此Apache环境下的ASP.NET程序的运行速度不会比在IIS下慢。