繁体   English   中英

如何正确使用 Wamp Server 设置虚拟主机?

[英]How to setup virtual host using Wamp Server properly?

我需要你的帮助来在 wampserver 中创建一个虚拟主机。 在办公室我可以创建一个虚拟主机,但是当我尝试在我的笔记本电脑中创建它时它不起作用。 我仍然无法弄清楚出了什么问题。 这就是我所做的。

  1. 我将wordpress文件复制到这个文件夹中。 这将是我项目的路径

    • E:\\Subversion\\chelle.wpblog.local
  2. 我编辑主机文件

    • C:\\Windows\\System32\\drivers\\etc\\hosts
    • 我将它添加到文件末尾

      127.0.0.1 chelle.wpblog.local

  3. 接下来是我在Apache中启用虚拟主机

    • C:\\wamp\\bin\\apache\\Apache2.4.4\\conf\\httpd.conf
    • 我取消注释这个

      包括 conf/extra/httpd-vhosts.conf

  4. 接下来是我在 WAMP 中设置虚拟主机

    • C:\\wamp\\bin\\apache\\Apache2.4.4\\conf\\extra\\httpd-vhosts.conf
    • 我在底部添加这个

      <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>
  5. 最后是重启 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> 

我将非常感谢您对此提供的任何帮助。 非常感谢!

快速简便,

  1. 为您的本地网站创建文件夹
  2. 转到本地主机(浏览器)
  3. 单击添加虚拟主机按钮
  4. 添加虚拟主机名
  5. 添加完整的绝对路径
  6. 重启DNS

由于这个线程很旧,也许您可​​以从他们的网站下载 WampServer 并安装它。 安装 WampServer 后,您可以查看有关如何使用 WampServer 创建虚拟主机和安装 WordPress 的文章并按照说明进行操作。 它超级快速和简单。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM