Apache与IIS共用80端口

合集下载

system进程(pid=4)占用80端口的解决方案

system进程(pid=4)占用80端口的解决方案

捣鼓了半天原来是sql08的report服务占用了 system的进程不一定就是iis
进行apache启动时。出现这个错误:
通常每个套接字地址(协议/网络地址/端口)只允许使用有一次: make_sock:could not bind to address 0.0.0.0:80
多方实验解决:
一般是IIS或其他程序占用了80端口引起的
分析:
netstat -a
查看相应端口,是否有程序占用
netstat -ab
查看具体占用程序
两种解决方法:
1、打开控制面板->服务 找到 IIS admin 等相应服务 关闭并禁用
今天安装php环境的时候老是提示80端口被占用 网上找了半天也没有解决方案
cmd下面netstat了一下发现时pid4这个进程
开始以为是iis的服务停掉以后还是不行控制面板里面卸载掉卸载internet信息服务-->万维网服务后还是不行
绑定的端口没有释放,需要等待一段时间,或者在程序退出时调用close关闭udp套接字。
我查看任务管理器的进程,发现上一个页面的开发服务器引起的,我结束进程:
强行关闭8080端口
解决方法如下: 1.打开CMD. cmd
2.查找端口号的PID netstat -a -o
3.强行关闭 ntsd -c q -p PID(查询出来的PID号码)
经过研究发现原来:
所有非托管资源程序必须能控制资源释放,如数据库连接、SOCKET连接等在使用后都应当显示关
闭,如果是长连接,在程序退出时应当确保所有占用的连接都被关闭。
如: http://localhost:8080

Apache和IIS端口冲突的解决方法

Apache和IIS端口冲突的解决方法

Apache和IIS端口冲突的解决方法Apache和ISS默认的端口号都是80输入http://localhost/ 默认成http://localhost:80/解决Apache和ISS默认的端口冲突解决办法一.修改ISS端口号(修改成8088)开始——控制面板——系统和安全——管理工具选择——Internet 信息服务(IIS)管理器左击——网站右击——Default Web Site——选择编辑绑定选中——编辑修改端口号为8088单击确定。

然后打开——Apache——Start正常启动打开ie浏览器输入http://localhost/或者http://localhost:80/在ie浏览器上输入iss修还后的端口8088 http://localhost:8088/二.修改Apache端口号打开Apache安装的文件目录——打开conf文件找到httpd.conf文件用记事本打开httpd.conf文件,在第46行有个Listen 80,将80修改为设置的端口假设修改为8011保存httpd.conf。

方法二、开始——>程序——>Apache HTTP Sever 2.2——>Configure Apache Server——>Eidt the Apache httpd conf Configuration File.假设将apache端口改为8011设置完成!不断的学习,不停地研究,时常思考。

加油!↖(^ω^)↗!编辑:雨季醉清风邮箱:createfly@腾讯微博:创飞梦工厂URL:/createfly。

解决windows系统80端口被占用问题

解决windows系统80端口被占用问题

解决windows 系统80端⼝被占⽤问题80端⼝被 system (pid=4) 系统占⽤的解决⽅法,80端⼝占⽤后服务器⽆法运⾏80端⼝⼀般被当做⽹页服务器的默认端⼝,使⽤本机搭建服务器环境的时候,都会默认使⽤80端⼝来作为⽹页访问端,但是有的时候80端⼝会被其他的不明⾝份的程序占⽤,导致 Apache 启动失败,修改 Apache 的默认端⼝后访问本机地址⼜⾮常⿇烦。

下⾯介绍⼀下如果80端⼝被占⽤后应该如何处理。

查找80端⼝被谁占⽤的⽅法进⼊命令提⽰⾏(开始运⾏输⼊ CMD ),输⼊命令 (显⽰包含:80的⽹络连接) ,就可以看到本机所有端⼝的使⽤情况,⼀般80端⼝在第⼀⾏,截图显⽰,端⼝已经被占⽤,PID 中写明 LISTENING 4。

PID=4 的程序是哪⼀个呢?接着在命令提⽰和下输⼊指令 ,列出所有当前运⾏的进程,发现 PID=4 的进程,居然是 system 。

扩展:也可以通过任务管理器查看PID :取消 system 进程对80端⼝的占⽤系统占⽤的端⼝⼀般都是微软官⽅的产品占⽤的。

所以这个时候主要考虑到⼏个服务:SQL Server 导致。

其中很有可能是SQL Server Reporting Services (MSSQLSERVER),它是 SQL Server 的⽇志系统。

IIS 服务。

如果你电脑安装了这个,很有可能它在运⾏着,那么它就占⽤着80端⼝当然如果都不是这两个原因的话,可以使⽤下下⾯的解决⽅法关闭⽅式关闭⽅法很简单,在运⾏框中输⼊ ,进⼊服务窗⼝。

或者直接在开始菜单⾥⾯的搜索框中输⼊“服务”即可打开。

然后找到 这个服务,然后停⽌,被占⽤的80端⼝就被释放出来了。

你也可以设置它的启动⽅式为“禁⽤”。

对于iis 的服务也可以⽤此⽅法解决关闭⽅式⼆(针对还是没办法解决的)使⽤管理员⾝份运⾏ cmd//停⽌系统http 服务//禁⽤服务的⾃动启动,此处注意等号后⾯的空格不可少这个时候80端⼝就会被释放,你可以重启你的应⽤程序啦netstat -ano|findstr 80tasklist services.msc SQL Server Reporting Services (MSSQLSERVER)net stop http sc config http start= disabled。

中央电大《网页开发技术》第一次形考

中央电大《网页开发技术》第一次形考

第一次形考_0006一、单项选择题(共10 道试题,共20 分。

)1. 在网站设计中所有的站点结构都可以归结为( )。

A。

两级结构B. 三级结构C。

四级结构D。

多级结构2。

IP地址在概念上被分为( )。

A. 二个层次B. 三个层次C。

四个层次D. 五个层次3. Web安全色所能够显示的颜色种类为()。

A. 4种B. 16种C。

216种D. 256种4. 良好的网站目录结构有利于()。

A。

用户浏览B。

页面的布局C. 网站的开发与维护D. 网站的CI形象5。

URL的全称是( )。

A。

Union Resource LocalB。

Universal Resource LocatorC。

Union Reform LocalD。

Universal Resource Local6。

()变量的设置是Tomcat的安装目录。

A。

JAVA_HOMEB。

TOMCAT_HOMEC。

CLASS_PATHD。

PATH7。

主机域名www.sina.corn.cn由四个子域组成,其中代表国别代码的子域是( )。

A. wwwB. sinaC. comD. cn8. 在域名系统中,域名采用()。

A。

树型命名机制B. 星型命名机制C. 层次型命名机制D。

网状型命名机制9。

应用程序开发模式不包括下面().A。

两层结构B. 三层结构C。

四层结构D. 基于Web的B/S模式10. Web的工作模式是( ).A。

客户端/服务器端B。

浏览器/服务器C. 浏览器/浏览器D。

浏览器/客户端二、判断题(共15 道试题,共30 分。

)1。

确定网站的域名和名称属于网站策划的一项工作。

A. 错误B。

正确2。

诞生于1946年的世界上第一台计算机ENIAC是一场计算技术的革命。

A. 错误B. 正确3。

每个Internet上的主机和路由器都有一个IP地址,包括网络号和主机号,这一编码组合是唯一的,没有两台有同一IP地址的机器.A. 错误B. 正确4。

我国于1994年5月正式接通Internet。

如何查看80端口被占用

如何查看80端口被占用

如何查看80端口被占用80端口一般会被 Apache 或是IIS 占用。

因为系统是默认的80端口。

如果想查看80端口被占用可以直接在cmd中运行netstat -ano 查看 80端口占用情况。

通过PID 为一个数值,在任务管理器中查看PID 列。

如图PID 为4 ,那么在任务管理器中查看PID 为4的进程如果没有显示 PID 列。

可以在进程--->查看----选择列。

选择PID列然后就可以判断到底是哪个 PID 的进程或是服务占用了。

【如果显示 80被 system占用,那么进入IIS 在根目录右击--->停止。

停止I IS 一般可以解决】如何查看端口号被哪个程序占用了?一、1、cmd输入netstat –ano可以看到。

2、例如我查80端口被什么占用了,对应的进程id是3600,再输入"tasklist"来查看pid为3600的是哪个进程什么程序在运行。

3、可以很快看到是tomcat6在用pid 3600,也即此进程占用了80端口,此时可以用"taskkill /pid 3600 /f"(语句中有三个空格)快速关闭此进程。

二、开始--运行--cmd进入命令提示符,输入netstat -ano即可看到所有连接的PID,之后在任务管理器中找到这个PID所对应的程序。

如果任务管理器中没有PID这一项,可以在任务管理器中选“查看”-“选择列”经常,我们在启动应用的时候发现系统需要的端口被别的程序占用,如何知道谁占有了我们需要的端口,很多人都比较头疼,下面就介绍一种非常简单的方法。

假如我们需要确定谁占用了我们的9050端口1、Windows平台在windows命令行窗口下执行:C:\>netstat -aon|findstr "9050"TCP 127.0.0.1:9050 0.0.0.0:0 LISTENING 2016看到了吗,端口被进程号为2016的进程占用,继续执行下面命令:C:\>tasklist|findstr "2016"tor.exe 2016 Console 0 16,064 K很清楚吧,tor占用了你的端口。

安装apache时80端口被占用的解决方案(Windows)

安装apache时80端口被占用的解决方案(Windows)

使用APMServ5.2.0,的时候,又重新启动了IIS
把IIS 端口改成了8080,但是又出现80端口被占用的问题,所以总结一个原因就是
如果用APMServ5.2.0 虚拟主机多站点的时候,IIS是不能启动的,因为以前没有使用虚拟主机的时候,IIS和APMServ
可以共用
安装apache时80端口被占用的解决方案(Windows)
如果80端口被占用,安装Apache的过程中,可能不能成功安装Apache的Servcie。如果不能正确安装Apache Service,那么执行Start或Restart等命令时,会报如“找不到Apache2的Service”的错误,然后执行失败。这样的话,修改了httpd.conf文件,将端口改为其它值(如8088)也无法正确启动Apache服务。
如果80端口被占用,安装Apache的过程中,可能不能成功安装Apache的Servcie。如果 不能正确安装Apache Service,那么执行Start或Restart等命令时,会报如“找不到Apache2的Service”的错误,然后执行失败。这样的话,修改了 httpd.conf文件,将端口改为其它值(如8088)也无法正确启动Apache服务。
二、修改httpd.conf,将端口改为其它未被占用的端口号;
三、重新运行Apache安装文件,选择修复功能执行。
当然,这里还有一种有效的办法,不仅可以不用更改默认的端口号,还能找到抢占端口的“凶手”是谁。链接:
一、开始->运行->cmd,输入netstat -o -an;
下面介绍一下我的处理方法:
1、通过netstat命令查找占用80端口的进程的pid: 以下为引用的内容:

IIS7.0和Tomcat整合80端口

IIS7.0和Tomcat整合80端口

首选确定安装好IIS和Tomact6及配置好JDK环境变量,IIS端口80,Tomcat端口为8080。

申明下以下是我在windows2008+IIS7.0+Tomact6.0环境下整合的。

新建IIS的注册表iis.reg,然后运行注册表。

Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE/SOFTWARE/Apache Software Foundation/Jakarta Isapi Redirector/1.0]"log_file"="D://tomcat6//logs""log_level"="debug""worker_file"="D://tomcat6//conf//workers.properties""worker_mount_file"="D://tomcat6//conf//uriworkermap.properties""tomcat_start"="D://tomcat6//bin//startup.bat""tomcat_stop"="D://tomcat6//bin//shutdown.bat""extension_uri"="/jakarta/isapi_redirect.dll"Tomcat6/conf/ 下新建workers.properties和uriworkermap.propertiesworkers.properties内容如下worker.list=worker1worker.ajp13w.type=ajp3worker.ajp13w.host=xxx.xxx.xxx (你的域名或者IP)#worker.ajp13w.host=192.168.2.118#worker.ajp13w.host=localhostworker.ajp13w.port=8009worker.worker1.lbfactor=1uriworkermap.properties内容如下#/jsp/*=worker1#/jsp/worker1/*=worker1#/*.jsp#!/*.html#/examples/*=tomcat6#/*.jsp=tomcat6isapi_redirect.dll拷贝到Tomcat6/conf/文件夹下Tomact目录下新建jk文件夹isapi_redirect.dll拷贝到Tomcat6/jk/文件夹下新建isapi_redirect.propertiesisapi_redirect.properties内容如下extension_uri=/isapi_redirect.dll#extension_uri=/jakarta/isapi_redirect.dlllog_file=D:/tomcat6/logs/isapi_redirect.loglog_level=infoworker_file=D:/tomcat6/conf/workers.propertiesworker_mount_file=D:/tomcat6/conf/uriworkermap.propertiestomcat_start=D:/tomcat6/bin/startup.battomcat_stop=D:/tomcat6/bin/shutdown.bat新建web.configWeb.config内容如下:<?xml version="1.0" encoding="UTF-8"?><configuration><system.webServer><handlers accessPolicy="Read, Execute, Script" /></system.webServer><appSettings><add key="jsp" value=".jsp" /></appSettings></configuration>Default Web Site下添加虚拟目录jakarta屋里路径找到Tomcat6/conf/下的isapi_redirect.dll 点击“链接为…”选择“特定用户”点击“设置”输入系统的用户名和密码然后确定。

80端口被占用

80端口被占用

80端口被占用介绍在计算机网络中,端口是用来区分不同应用程序或服务的标识符。

端口号的取值范围是从0到65535,其中一些端口号已经被预先定义并分配给特定的协议或服务。

其中,80端口被默认分配给HTTP协议,用于Web服务器与客户端之间的通信。

然而,有时候我们可能会遇到80端口被占用的情况,这会导致无法启动或访问Web服务器。

本文将介绍一些常见的原因和解决方法。

原因分析80端口被占用的原因可能有多种,下面列举了一些常见的情况: 1. 其他应用程序或服务正在使用80端口:某些应用程序或服务可能会默认占用80端口,并且在启动时自动绑定到该端口,例如某个已运行的Web服务器。

2. 多个Web服务器同时尝试使用80端口:如果在同一台计算机上运行了多个Web服务器,它们可能会尝试绑定到相同的80端口。

3. 防火墙或安全软件阻止80端口:某些防火墙或安全软件可能会限制对80端口的访问,导致无法启动Web服务器。

在这种情况下,您需要修改防火墙或安全软件的设置。

4. 操作系统或网络错误:有时候,操作系统或网络配置错误可能导致80端口无法正常使用。

解决方法下面是一些常见的解决方法,您可以根据实际情况选择适合的方法: 1. 终止占用80端口的应用程序或服务:通过查看当前运行的服务或进程列表,找到占用80端口的应用程序或服务,并终止它们。

在Windows系统上,可以通过任务管理器来查看和终止进程;在Linux系统上,可以使用命令行工具如netstat或lsof来查看并终止进程。

2. 修改Web服务器的监听端口:如果是因为多个Web服务器同时尝试使用80端口导致的冲突,您可以修改其中一个Web服务器的监听端口,将其指定为其他未被占用的端口,例如8080或8888。

3. 检查防火墙或安全软件的设置:如果80端口被防火墙或安全软件限制访问,您可以修改其设置以允许对80端口的访问。

具体的操作方法可能因不同的防火墙或安全软件而异,您可以查阅其官方文档或咨询相关技术支持。

Apache 启动不了的解决方法

Apache 启动不了的解决方法

查看文章Apache 启动不了的解决方法2010-11-09 17:33Xampp中Apache无法启动的解决方法xampp(apache+mysql+php+perl)是一个功能强大的建站集成软件包。

许多人通过他们自己的经验认识到安装 Apache 服务器是件不容易的事儿。

如果您想添加MySQL、PHP 和 Perl,那就更难了。

应用xampp可以轻松地在各种系统下搭建php等程序的运行环境。

今天应用xampp修改wordpress的时候发现一个严重的问题,apache启动不了,不论点击多少次start,都显示如下:busy…apache started [port 80]经多方查询资料,原来是因为80端口被别的程序占用了,所以这个端口很busy,从而导致apache无法启动的。

解决方法一如下:1、运行-cmd,然后输入netstat -ano,回车;2、查看本地地址中包含xx.xx.xx.xx:80的那一行的pid,为几个数字,把这几个数字记下来;3、启动“任务管理器”——“进程”,在工具栏——“选择列”前面的框打上勾;4、然后查看与刚才那个pid对应的是哪个程序,很容易就会找到,就是它占用了80端口;5、直接将其停止或者使用优化大师等工具使之开机不启动。

好了,可以用了。

第二种解决方法:更换端口我的asp用的iis服务器是xp的默认web80端口,jsp用的tomcat服务器用的是tomcat安装时的默认端口8080,那么php下xampp里边的apache我就将它的默认80端口修改为8081(随便其它的只要不被占用就可以了)其它的不就ok了既然如此如何修改apache的端口呢?到xampp的安装目录下,点击进入apache\conf下,可以看到“httpd.conf”文件,用文本编辑器打开,将所有的80修改为8081, Listen 80 -〉Listen 8081 ServerName localhost:80-〉ServerName localhost:8081然后在XAMPP Control Panel中重新启动apache。

win7下80端口被占用的解决方法

win7下80端口被占用的解决方法

最近本人由于在电脑上同时安装了sql servers 2008 ,vs2010,同时搭配了php 的环境,但是,悲剧的事情发生了。

Apache 经常打不开,原因当然是80端口被占用了,于是不停地百度谷歌,重装系统。

最近终于把问题给解决了。

首先介绍一种网上普遍的方法,就是查找占据80端口的进程,然后关闭它就行了。

1、运行cmd,然后输入netstat -ano,回车;2、查看开头几行包含0.0.0.0:80的那一行最后的pid,为几个数字,把这几个数字记下来;3、启动“任务管理器”——“进程”,在“工具栏”——“选择列”前面的框里打上勾;4、然后找到与刚才那个pid对应的是哪个程序,很容易就会找到,就是它与0.0.0.0:80进行了绑定(bind);结束这个进程,再点击Apache的Start按钮,终于出现了那个Running 。

但是上面的方法不适用我的情况。

因为我找不到pid=4的进程,于是另一方法。

Win7的80端口默认是被System进程占用的。

用如下方法可以解决System进程占用80端口的问题:打开RegEdit:开始-运行-输入regedit-调出注册表找到HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\HTTP找到一个DWORD值Start,将其改为0重启电脑,System进程将不会占用80端口就可以打开你的apache了这种方法确实暂时解决了我的问题,应该就是这样的,但是后面又来问题了。

Apache又无缘无故的打不开了。

于是,最后终于发现了进程有个SQL Server Reporting Services ,这个是sql servers带有的,而且自动运行,关闭它,就可以了。

但是切记,可能这个进程会自动打开,所以先把apache打开,这个的话后面SQL Server Reporting Services运行也不会占用80端口了。

共用80端口

共用80端口

方法二:
IIS6,多IP下共存,IIS为192.168.0.1,apache为192.168.0.2
到2003的CD下的 support/tools/Support.cab。解压出httpcfg.exe文件,COPY到windows/system32/目录下,用法自己看帮助
命令行
绑定到某IP: httpcfg set iplisten -i 192.168.0.1
即命令使用IIS的只监听指定的IP及端口
查看绑定: httpcfg query iplisten
删除绑定: httpcfg delete iplisten -i 192.168.0.1
命令行
net stop Apache2
net stop iisadmin /y
net START Apache2
配置Apache以支持PHP5:
LoadModule php5_module “D:/PHPServer/PHP5/php5apache2.dll”
AddType application/x-httpd-php .php
DirectoryIndex index.html index.php
PHPIniDir “D:/PHPServer/PHP5″
该命令反馈如下disablesocketpooling : (BOOLEAN) True
重启IIS
Inetpub\AdminScripts>cscript adsutil.vbs set w3svc/disablesocketpooling true
由于 DisableSocketPooling 在 IIS 6.0 元数据库架构 (MBSchema.xml) 中被定义为有效属性,所以,您仍然可以使用 Adsutil.vbs 设置该属性,但这种设置不起作用。IIS 6.0 中的功能是新增的核心级别驱动程序 HTTP.sys 的一部分。要配置 HTTP.sys,您必须使用 Httpcfg.exe

Apache无法启动解决 the requested operation has failed

Apache无法启动解决 the requested operation has failed

Apache无法启动解决the requested operation has failedApache不能启动解决办法这是我这两天频繁遇到的问题。

Apache服务器还真是问题少年!任何点改动都可能导致它无法使用。

原因一:80端口占用例如IIS,另外就是迅雷。

我的apache服务器就是被迅雷害得无法启用!原因二:软件冲突装了某些软件会使apache无法启动如 你打开网络连接->TcpIp属性->高级->WINS标签把netbios的lmhosts对勾去掉,禁用tcp/ip的netbios. 然后再启动应该就可以了。

原因三:httpd.conf配置错误如果apache的配置文件httpd.conf搞错了,在windows里启动它,会提示the requested operation has failed,这是比较郁闷的事,因为查错要看个半天。

其实可以用命令行模式启动apache,并带上参数,apache会提示你哪句有误,然后就可以针对性的解决。

检查错误方法:进入cmd 然后进入Apache安装目录(具体为你自己的安装目录)\bin> httpd.exe -w -n "Apache2" -k start(引号中的Apache2修改为你的Apache服务名,我的是2.2.4版,服务名就是Apache2,可以到计算机服务里找)提示133行有问题时(提示:Syntax error on line 133 of ...........),打开Apache安装目录\conf\httpd.conf 找到第133行的ServerAdmin (没有工具确定行数的按ctrl+F 用"ServerAdmin"关键字查找,一般会有两个,下面那个就是)这行在其后空一格,随便加个名字,例如,加上abc后,就可以解决了.如果是端口占用(提示:(OS 10048)通常每个套接字地址(协议/网络地址/端口)只允许使用一次。

Apache启动失败,请检查相关配置

Apache启动失败,请检查相关配置

用APMServ 的时候提示:“1、Apache启动失败,请检查相关配置。

2、MySQL5.1启动失败,请检查相关配置… ”出现这个问题从网上查了查主要有三个原因:1.80端口被占用=>改端口,如80802.去掉ssl的勾试试3.注意目录文件不能含有中文(这个比较常见)4.如果发现上面的3个方法还是不行,可能是你的系统变量未指向你window系统下的system32,解决方法如下:检查系统变量中path是否缺少[%SystemRoot%\system32]方法:我的电脑属性=>高级=>环境变量=>在系统变量里找到path=>编辑将[;%SystemRoot%\system32]加到最后即可(括号里面的包括前面的分号)。

Apache启动失败,请检查相关配置。

√MySQL5.1已启动我自己有2台服务器,一台有3个分区,分别是 C D E,然后我把这个软件放在E盘启动后,一切成功。

相同的我另一台服务器只有2个分区,我把它放在D盘,然后启动,就提示Apache 启动失败,请检查相关配置。

√MySQL5.1已启动我一直找不到原因,总以为是什么端口占用着,可是系统是新装的,上来什么都没有,不大可能,上网查了一下文章,用了很多方法也都没能解决使用APMServ时出现“1、Apache启动失败,请检查相关配置。

√MySQL5.1已启动。

”错误的终极解决办法:使用APMServ一键安装PHP平台时经常会出现以下错误导致无法继续下去!这是第一种解决办法:安装官方的提示,是由于其他程序占用了80端口导致的错误,比如迅雷默认就使用了80端口.因为我同时也装有IIS,所以在装IIS时就发现了这个问题,把迅雷的端口作了调整.但是这次仍然出现了这种错误.通常的解决办法查找其他程序是否占用了该端口或者修改下端口.但是我改了几个端口仍然不能使用,不会所有端口都被占用吧?既然修改端口不起作用,就只能采取其他措施了.如下: 在程序说明中有如下介绍:"5、访问本机请用http://127.0.0.1/或https://127.0.0.1/ (如果开启SSL)",我的80端口已经被IIS占用了(需要说明的一点是,IIS占用80端口与APMServ使用其他端口并不矛盾,可以并存),那么关闭SSL呢?试一下,OK了!具体原因尚不清楚.总之解决办法两种:1、改端口;2、改端口不行的情况下,关闭SSL。

iis部署部署中一个端口部署多个网站的介绍

iis部署部署中一个端口部署多个网站的介绍

配置IIS主机头,实现一机部署多个网站(共用80端口)经常发布网站的朋友都清楚在实际使用过程中我们并不必须在每台服务器上放置唯一的站点,可以通过虚拟目录或者修改发布端口等多种方式实现在同一台服务器上发布多个网站的目的,从而节约了资源也方便我们有效的管理多个站点。

但是可能在实际使用过程中不希望通过虚拟目录或端口号的形式来访问站点,那么两个网站能否都用80端口在IIS中启动呢?今天我们就来解决此问题。

一、Windows 2003中IIS 6主机头功能:实际上我们可以利用Windows 2003中的IIS 6组件实现前面提到的让两个不同的网站都用80端口对外发布,而访问时直接输入地址即可不用加任何虚拟目录路径也不需要修改默认端口号。

这就是IIS 6中的主机头功能,下面笔者通过一个案例为大家详细介绍。

二、手把手教你配置主机头发布多个站点:我们需要实现的功能就是在同一台服务器上发布两个不同的网站,而这两个网站都使用80端口,而且访问时不通过虚拟目录完成。

(1)建立A站点:我们需要分别建立这两个站点。

第一步:在Windows 2003中启动IIS组件,然后在网站选项上点鼠标右键选择“新建”-&gt;“网站”。

(如图1)图1:启动IIS组件(点击看大图)第二步:在网站描述处填写“softer站点”来区分另一个网站名称,点“下一步”按钮继续。

(如图2)图2:填写网站名称(点击看大图)第三步:接下来就是主机头设置的关键了,网站IP地址处信息保持默认的“全部未分配”即可,端口是默认的80,最下面的“此网站的主机头”输入一个域名,当然如果真的要对internet 发布自己的网站,这个域名是要输入真实的已经注册的。

笔者填写作为该网站的主机头。

(如图3)图3:填写域名(点击看大图)第四步:选择网站发布的主目录,通过“浏览”按钮定位站点文件夹。

(如图4)图4:选择网站发布主目录(点击看大图)第五步:设置网站访问权限,这个就要根据自己站点的特征决定了。

同IP端口多域名

同IP端口多域名
ServerName
DefaultLanguage zh-CN
AddDefaultCharset GB2312
ProxyPass / :8080/
ProxyPassR端提交http时,默认是80端口,而IIS默认是80端口,当访问时,站点自动由IIS解释。但访问时,由于服务器是Apache,端口是80,显然此时服务器上的IIS和Apache冲突,当然你可以改变IIS和Apache的端口。但你不希望用户访问站点是需要加上端口(:8080)吧?
Apache与IIS共80
1、服务器IP假设为111.111.111.111,操作系统为Windows 2003 server
2、IIS中有一个站点,域名为,并且已绑定,初始端口为80
3、现在需要创建一个PHP站点,需要使用web服务器为Apache。域名为
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_http_module modules/mod_proxy_http.so
</VIRTUALHOST>
上述代码就是将Apache的请求转向了IIS,保存文件后,重新启动Apache。
此时请访问,是不是和:8080一样呢!
OK!a站点虚拟成功!至于B站点可以有详细的配置,例如默认文档等等,此处省略。
PHP站点配置将在以后配置!
这种方法建立可以建立专业的虚拟主机,几乎所有使用IIS提供虚拟主机的公司都这样做的.
---------------------------------------------------------

让apache反向代理iis及多域名设置

让apache反向代理iis及多域名设置

AllowOverride None
Order Deny,Allow
Allow from all
</Directory>
</VirtualHost>
四、asp页面访问,apache反向代理iis,以及rewrite综合设置。
要在apache中访问asp,则需要用到proxypass,即在第二步中先打开的代理模块。
一、首先安装好apache及iis,设置apache端口80,iis端口81(这里只要别和apache冲突就行了)
二、找到apache的配置文件httpd.conf,去掉下面语句的注释
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
proxyreverse /test http://123.0.0.1:81/test
# 请使用相同目录名,否则路径会出错,就是通过在浏览器中输入a.b.c,会访问“d:\www\abc\”根目录下文件;若输入a.b.c/test,就会通过apache的反向代理访问至iis下的test目录(或test虚拟目录),以此类推,可以相应多设置需要执行asp的目录。
RewriteCond %{REQUEST_URI} ^/.*(\.asp)x?\??.*$ [NC]
RewriteRule ^/test/(.*) http://123.0.0.1:808/test/$1 [P]
#把html文件的请求转到iis处理
RewriteCond %{REQUEST_URI} ^/.*(\.html)?\??.*$ [NC]

在IIS服务器多个网站绑定同一端口号

在IIS服务器多个网站绑定同一端口号

在IIS服务器多个网站绑定同一端口号
具体步骤:
1、在本地磁盘新建一个文件夹,例如:“E:\wwwroot”,再在“wwwroot”文件夹下建两个文件夹(以两个网站为依据,如果有多个网站就建多个文件夹),如下图:
然后再将网站放到相应的文件夹下面,一个文件夹里面存放放一个网站。

如下图:
2、在IIS服务器中添加新的网站,添加第一个网站,如下图:
添加第二个网站,如下图:
名(域名)不一样,见下图:
然后单击左边的“应用程序池”,将网站的“托管管道模式”从“集成”改为“经典”,见下图:
3、网站已经建立,并且部署完成了,下面进行最后一步,打开“C盘”,查找路径“C:\Windows\System32\drivers\etc”,里面有一个“hosts”文件,单击鼠标右键,用记事本打开,将网站的主机名添加到文件的末尾处,如下图:
4、回到IIS服务器,点击已经部署好的其中一个网站,在浏览器上进行浏览,如下图:
页面显示如下图:
查看“admin”文件夹下的登录页面。

下浏览器试试,或者清除浏览器里面的缓存。

IIS6.0+tomcat6.0+JK整合(8080端口和80端口共用jsp网站)

IIS6.0+tomcat6.0+JK整合(8080端口和80端口共用jsp网站)

经过这么久IIS和tomcat整合实践,积累了部分经验。

从一开始整合项目需要放到tomcat的webapps下面,而且必须需要tomcat里面ROOT的index.html 的跳转;到现在的可以把项目放在服务器的任何地方上,而也不需要index.html,只需要项目本身的index.jsp就能够进行访问。

总的来说,还是有一定提高。

现将IIS6.0和tomcat6.0的完美整合整理如下:一、整合环境:Windows Service 2003、JDK1.60、IIS7.0 和tomcat6.0二、使用技术:IIS6.0和TOMCAT6.0的默认端口不用改变,使用原有的80和8080即可,采用isapi_redirect-1.2.27.dll文件作为iis和tomcat的接口,使用就能访问tomcat中的jsp网站。

三、操作步骤说明:我的项目是放在E盘下,名字为zhdr,我的域名 是和服务器绑定的,在外网上输入:8080是可以访问到网站的,输入:8080/zhdr是可以访问网站的。

1、下载isapi_redirect-版本号.dll文件作为IIS与TOMCAT的接口,我下载的是isapi_redirect-1.2.27.dll,然后将文件放在${TOMCAT_HOME}/conf下。

2、使用记事本建立如下.reg文件,保存并执行:Windows Registry Editor Version 5.00[HKEY_LOCAL_MACHINE\SOFTWARE\Apache Software Foundation\Jakarta Isapi Redirector\1.0]"log_file"="e://Program Files//Apache Software Foundation//Tomcat 6.0//logs""log_level"="info""worker_file"="e://Program Files//Apache Software Foundation//Tomcat 6.0//conf//workers.properties""worker_mount_file"="e://Program Files//Apache Software Foundation//Tomcat 6.0//conf//uriworkermap.properties""extension_uri"="/jakarta/isapi_redirect-1.2.27.dll"注意修改与tomcat相关的路径,一定要设置成为自己tomcat的路径。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
然后建立一个虚拟主机,将该域名的所有访问转向81端口。
<VirtualHost *:80>
本机安装Apache与IIS共用80端口方法
本机安装Apache与IIS共用80端口方法.本机安装iis与apache,无法同时使用80端口,现给出解决方法:
Apache与IIS共用80端口方法一:
IIS5,多IP下共存,IIS为192.168.0.1,apache为192.168.0.2 原文地址
由于 DisableSocketPooling 在 IIS 6.0 元数据库架构 (MBSchema.xml) 中被定义为有效属性,所以,您仍然可以使用 Adsutil.vbs 设置该属性,但这种设置不起作用。IIS 6.0 中的功能是新增的核心级别驱动程序 HTTP.sys 的一部分。要配置 HTTP.sys,您必须使用 Httpcfg.exe
Apache与IIS共用80端口方法三:
将apache设为使用80端口,IIS使用其它端口,比如81,然后将apache作为IIS的代理。
在httpd.conf里面,取消下面四行的注释:
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
AddType application/x-httpd-php .php
DirectoryIndex index.html index.php
PHPIniDir "D:/PHPServer/PHP5"
其中最重要的一条就是 PHPIniDir,用来指明php.ini文件所在位置,即PHP5的安装目录,注意所有目录的应该改为D:/PHPServer/PHP5这种格式,而非D:\PHPServer\PHP5,IIS的访问地址为http://192.168.0.1,Apache访问地址为http://192.168.0.2
c:\Inetpub\Adminscripts
cscript adsutil.vbs set w3svc/disablesocketpooling true
该命令反馈如下disablesocketpooling : (BOOLEAN) True
重启IIS
Inetpub\AdminScripts>cscript adsutil.vbs set w3svc/disablesocketpooling true
ServerName
ProxyPass / http://localhost:81/
ProxyPassReverse / http://localhost:81/
</VirtualHost>
这样,对外就可以只需要一个端口,即可同时使用apache和IIS的功能了
然后建立一个虚拟主机,将该域名的所有访问转向81端口。
ServerName
ProxyPass / http://localhost:81/
ProxyPassReverse / http://localhost:81/
这样,对外就可以只需要一个端口,即可同时使用apache和IIS的功能了
类推,使用第二种方法,你可以在IIS上配置PHP4,Apache2中配置PHP5,只需要IIS中安装PHP4,把php.ini复制到\windows目录即可,这个就不用说了吧,Apache2中,只要把PHP5的php.ini放在PHP5安装目录里面就行了
配置Apache以支持PHP5:
LoadModule php5_module "D:/PHPServer/PHP5/php5apache2.dll"
命令行
绑定到某IP: httpcfg set iplisten -i 192.168.0.1
即命令使用IIS的只监听指定的IP及端口
查看绑定: httpcfg query iplisten
删除绑定: httpcfg delete iplisten -i 192.168.0.1
命令行
net stop Apache2
Apache与IIS共用80端口方法二:
IIS6,多IP下共存,IIS为192.168.0.1,apache为192.168.0.2 原文地址
到2003的CD下的 support/tools/Support.cab。解压出httpcfg.exe文件,COPY到windows/system32/目录下,用法自己看帮助
net stop iisadmin /y
net START Apache2
net START w3svc
保证iis下的ip设置为全局默认,Apache中httpconf设置listen 192.168.0.2:80,就应该可以两个服务同时运行,相互不冲突了。
IIS的访问地址为http://192.168.0.1,Apache访问地址为http://192.168.0.2
Apache与IIS共用80端口方法四:
网上常用的单IP共用80端口方法,不过不推荐,只是使用Apache的代理,速度有影响将apache设为使用80端口,IIS使用其它端口,比如81,然后将apache作为IIS的代理。
在httpd.conf里面,取消下面四行的注释:
LoadModule proxy_module modules/mod_proxy.so
相关文档
最新文档