[英]How to setup virtual host using Wamp Server properly?
我需要你的帮助来在 wampserver 中创建一个虚拟主机。 在办公室我可以创建一个虚拟主机,但是当我尝试在我的笔记本电脑中创建它时它不起作用。 我仍然无法弄清楚出了什么问题。 这就是我所做的。
我将wordpress文件复制到这个文件夹中。 这将是我项目的路径
我编辑主机文件
我将它添加到文件末尾
127.0.0.1 chelle.wpblog.local
接下来是我在Apache中启用虚拟主机
我取消注释这个
包括 conf/extra/httpd-vhosts.conf
接下来是我在 WAMP 中设置虚拟主机
我在底部添加这个
<VirtualHost *:80> ServerName chelle.wpblog.local ServerAlias chelle.wpblog.local DocumentRoot "E:/Subversion/chelle.wpblog.local/" <Directory "E:/Subversion/chelle.wpblog.local/"> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny allow from all </Directory> </VirtualHost>
最后是重启 wampserver 并在浏览器中打开 chelle.wpblog.local。 而且不显示。 它只显示谷歌搜索结果。
我正在使用 apache 服务器在本地 wamp 上安装 zend 框架。 首先决定本地 url 的域名是什么。 Ex->www.test_zend_tutorial.com然后打开位于“C:\\WINDOWS\\system32\\drivers\\etc”的文件
主机
写
127.0.0.1(使用一个制表符空间) www.test_zend_tutorial.com
然后转到位于的文件夹
D:\\wamp\\bin\\apache\\Apache2.2.17(不管你的版本是什么)\\conf\\
并打开文件
配置文件
并搜索文本
包括 conf/extra/httpd-vhosts.conf
并通过从行的开头删除 # 标记来取消注释。保存文件并关闭它。 现在转到位于的另一个文件夹
D:\\wamp\\bin\\apache\\Apache2.2.17\\conf\\extra
并打开文件
httpd-vhosts.conf
并将下面的代码粘贴到此文件的最后
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot "D:\wamp\www"
ServerName localhost
ErrorLog "logs/localhost-error.log"
CustomLog "logs/localhost-access.log" common
</VirtualHost>
<VirtualHost *:80>
ServerName www.test_zend_tutorial.com
DocumentRoot "D:\wamp\www\(your project folder name)\public"
SetEnv APPLICATION_ENV "development"
<directory "D:\wamp\www\(your project folder name)\public">
DirectoryIndex index.php
AllowOverride all
Order Allow,Deny
Allow from all
</directory>
</VirtualHost>
并重新启动 wamp,现在在浏览器中写入www.test_zend_tutorial.com ,您将看到一切正常。
如果当您在浏览器中使用新域时,它会转到 google 搜索或类似的内容,那么对您的主机文件的更改尚未被识别。
您必须在更改主机文件后重新启动,或者更简单地从命令窗口运行这两个命令(以管理员身份)
net stop dnscache
net start dnscache
这将刷新 Windows DNS 缓存并获取您的主机文件更改。
ping
您的新域以检查它是否被看到也是一个好主意,使用
ping chelle.wpblog.local
如果它报告 127.0.0.1 作为 ip 地址和 4 个发送和 4 个接收数据包,那么域现在对 Windows 是已知的,如果它报告某个其他 ip 地址,则主机文件更改未成功。
此外,在创建 VHOSTS 时也为本地主机创建 VHOSTS 也是一个好主意,否则 wamp 主页将不起作用。 您还有旧的 Apache 2.2 语法(Order allow,deny allow from all),您可以尝试使用 Apache 2.4 语法,见下文
所以试试这个
## must be first so the the wamp menu page loads
<VirtualHost *:80>
ServerAdmin webmaster@mail.net
DocumentRoot "D:/wamp/www"
ServerName localhost
<Directory "D:/wamp/www">
Require local
</Directory>
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@mail.net
ServerName chelle.wpblog.local
ServerAlias www.chelle.wpblog.local
DocumentRoot "E:/Subversion/chelle.wpblog.local"
<Directory "E:/Subversion/chelle.wpblog.local">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
在 WampServer 3.0.4 中,您不需要运行所有这些设置。 第一次转到本地主机并在“添加垂直主机”的“工具”区域下,它会在 wamp 服务器设置中说打开“垂直主机子菜单”。 要到达那里,请右键单击 wamp 图标 > 转到 wamp 服务器设置 > 并单击 Vertual Host 子菜单。 然后重新刷新页面并按照设置过程进行,您只需要提供服务器名称和路径。 它会为你做所有的工作。 就那么简单
方法一:
在主机文件中
127.0.0.1 mysite
::1 mysite
在 C:\\wamp64\\bin\\apache\\apache2.4.23\\conf\\extra\\httpd-vosts.conf 文件中添加您的虚拟主机,如下所示
<VirtualHost *:80>
ServerName mysite
DocumentRoot "<path_to_your_local_site>"
<Directory "<path_to_your_local_site>">
Options +Indexes +Includes +FollowSymLinks +MultiViews
AllowOverride All
Require local
</Directory>
</VirtualHost>
确保在 httpd.conf 文件中启用 vhost 配置启用如下 C:\\wamp64\\bin\\apache\\apache2.4.23\\conf\\httpd.conf
# Virtual hosts
Include conf/extra/httpd-vhosts.conf
如上所述更改配置后,重新启动 wamp 中的所有服务并加载网站,如下所示http://mysite您的本地站点应该打开。
方法二:
在最新版本的 wamp 中,您可以通过网页进行此配置。 在浏览器中打开 localhost。 你会看到 wamp 欢迎页面。
在下面的工具下,有添加虚拟主机的选项。 单击将带您添加虚拟主机页面的链接。
在主机名称中,输入您的站点名称,例如:mysite 在 VirtualHost 文件夹的完整绝对路径下,输入您站点的路径。
保存配置并重新启动所有服务。 您应该可以通过http://mysite链接打开mysite
正如另一个答案中所指出的,在较新版本的 wam 中
上面的答案在某种程度上使问题过于复杂,事实上,问题包括误导响应者的额外信息。
线索在第 2 步和第 5 步中描述的症状中。hosts 文件已设置,但当向“blah.local”发出请求时,google 会做出响应。 阿帕奇不参与。
诊断的第一步是 ping blah.local 并查看它是否正确映射到 127.0.0.1。 我从来没有(作为开发人员多年)发现有必要在 Windows 或 Linux/Mac 上重新启动本地 DNS,所以我希望这能开箱即用。 但如果没有,当然重新启动 DNS 并查看它。
但是,最新版本的 Chrome 至少无法识别 TLD '.local',因此当您将 URL 放回浏览器时,它会作为搜索词传递给 Google。 您的浏览器中可能有一个设置来告诉它处理未经批准的 TLD,但最简单的解决方案是使用 W3C 批准的 TLD,如“.com”。
简而言之,如果您的主机文件读取类似
127.0.0.1 local.chelle.wpblog.com
而不是
127.0.0.1 chelle.wpblog.local
一切都应该工作。
从外部访问WAMP服务器时遇到问题。 我有动态IP,因此我正在使用No-IP服务来完成此轮。 所以我的动态IP地址是demo.ddns.net,我将端口10005重定向到了我的PC IP,即192.168.1.50。 如何告诉WAMP到demo.ddns.net的任何传入流量都需要重定向到端口10005? 目前,我的配置如下所示:
<VirtualHost *:80> ServerName localhost ServerAlias localhost DocumentRoot "${INSTALL_DIR}/www" <Directory "${INSTALL_DIR}/www/"> Options +Indexes +Includes +FollowSymLinks +MultiViews AllowOverride All Require all granted </Directory> </VirtualHost> <VirtualHost *:80> ServerAdmin example@example.com ServerName demo.ddns.net:10005 ServerAlias www.demo.ddns.net:10005 DocumentRoot "${INSTALL_DIR}/www/demo1" <Directory "C:/wamp/www/demo1"> Options +Indexes +Includes +FollowSymLinks +MultiViews AllowOverride All Require all granted </Directory> </VirtualHost>
我将非常感谢您对此提供的任何帮助。 非常感谢!
快速简便,
由于这个线程很旧,也许您可以从他们的网站下载 WampServer 并安装它。 安装 WampServer 后,您可以查看有关如何使用 WampServer 创建虚拟主机和安装 WordPress 的文章并按照说明进行操作。 它超级快速和简单。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.