IIS 和 XAMPP 冲突,端口已更改
Posted
技术标签:
【中文标题】IIS 和 XAMPP 冲突,端口已更改【英文标题】:IIS & XAMPP Conflict, Ports Already Changed 【发布时间】:2015-11-04 08:38:09 【问题描述】:我启用了 IIS(全新的“安装”)并使用全新的 Wordpress 构建配置了端口配置的 XAMPP 安装。
httpd.conf(更改):
Listen 8080
ServerName localhost:8080
httpd-ssl.conf(更改):
Listen 4433
<VirtualHost _default_:4433>
ServerName www.example.com:4433
httpd-vhosts.conf(更改):
NameVirtualHost *:8080
<VirtualHost *:8080>
DocumentRoot "C:/xampp/htdocs"
ServerName localhost
</VirtualHost>
<VirtualHost *:8080>
DocumentRoot "C:/xampp/htdocs/foobar"
ServerName foo.bar
<Directory "C:/xampp/htdocs/foobar">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
主机(更改):
127.0.0.1 localhost
127.0.0.1 foo.bar
测试:
http://localhost/ IIS 根目录(预期) http://localhost:8080/[dashboard] XAMPP 根目录(预期) http://localhost:8080/foobar 解析为http://localhost/foobar,显示 IIS 错误页面(不正确,应显示 Wordpress 安装) http://foo.bar 显示 IIS 根目录(不正确,应该显示 Wordpress 安装) http://foo.bar:8080 解析为http://foo.bar(与上述结果相同)老实说,在这一点上,我不知道我的设置是不正确的。我整天都在阅读论坛和 SO,但我没有取得任何进展。帮助?我是否对行为做出了错误的假设,或者我的设置有误?
【问题讨论】:
我假设您关闭了 httpd-ssl.conf 中的 VirtualHost 标签(更改): 如果你的 XAMPP 自带 Apache 2.4NameVirtualHost *:8080
是不允许的。
当您安装 WordPress 时,您在运行安装时使用了什么 url。这很重要。如果您使用localhost/foobar
安装它,这将解释从http://foo.bar
和http://localhost:8080/foobar
到IIS 服务器的url 交换。
@RiggsFolly 是的,VirtualHost 标签已关闭,仅更新了端口。我确实注意到日志中关于 NameVirtualHost *:8080 被弃用的错误,但删除它似乎没有任何效果。至于站点网址,我在 wp-config 中使用define('WP_HOME', 'http://foo.bar'); define('WP_SITEURL', 'http://foo.bar');
。
你是否也检查了 WP 数据库,它保存了运行安装时使用的 url,请参阅WP Docs Changing The Site URL
【参考方案1】:
假设您希望两个服务同时运行,您将主要使用 XAMPP。这是我的解决方案:
每当我想使用 XAMPP 时,我都不喜欢输入端口 8080。所以我只是把IIS的post number改成了82。
-
启动 IIS (7) 在左侧转到
YOUR MACHINE
> Sites
> Default Web Site
然后右键点击bindings
会弹出一个窗口
单击第一行并将端口号编辑为除 80 之外的任何值(因为如果您不输入任何内容,则 80 是默认端口
您的浏览器)
重置httpd.conf、httpd-ssl.conf的所有设置
然后打开 httpd-vhosts.conf 并把这个:
<VirtualHost *:80> DocumentRoot C:\xampp\htdocs\foobar ServerName foo.bar </VirtualHost>
-
重启电脑(没有httpd-vhosts.conf不生效)
文件hosts
原样没有问题。
【讨论】:
以上是关于IIS 和 XAMPP 冲突,端口已更改的主要内容,如果未能解决你的问题,请参考以下文章
IIS服务器和xampp中的appche服务器端口冲突解决办法