在 Wamp 中设置 VirtualHost 时出错 - 服务器名称在文件 httpd-vhosts.conf 中有语法错误

Posted

技术标签:

【中文标题】在 Wamp 中设置 VirtualHost 时出错 - 服务器名称在文件 httpd-vhosts.conf 中有语法错误【英文标题】:Error when setting up VirtualHost in Wamp - The ServerName has syntax error in file httpd-vhosts.conf 【发布时间】:2017-06-21 08:33:18 【问题描述】:

我正在尝试将实时 wordpress 网站移动到我计算机上的本地站点,以便我可以进行更改和尝试,而不会弄乱实时网站。我在 Win7 PC 上使用 WAMP。

我完成了所有步骤...安装了 WAMP 并下载了我的 Wordpress 文件和我的数据库文件,将 wordpress 文件放在 D:/wamp/www/site-name 文件夹中,我在 phpadmin 中创建了一个新数据库与我下载的数据库同名,并导入我的数据库,然后我使用 sql 查询将数据库内的 URLS 从 http://www.site-name.org 更新为 localhost/site-name,然后我在 wp- 中更新了数据库名称、用户名和密码config.pho 文件来反映 localhost 与实时站点上使用的内容,然后因为我使用的是 apache 2.4.x,我去为我的 wordpress 站点创建一个虚拟主机,因为 httpd.config 中的 localhost 选项被抑制文件...从我收集的信息来看,较新的版本使用虚拟主机,所以我试图这样做,而不是取消 localhost 选项。

所以,我去了 c/windows.system32/drivers/etc/hosts 文件并添加了以下内容

# localhost name resolution is handled within DNS itself.
    127.0.0.1       localhost
    ::1             localhost

# site-name name resolution
    127.0.0.1   site_name                   #local version of website
    ::1         site_name

(注意我已经检查了 httpd.config 文件,并且这一行已经处于活动状态:

# Virtual hosts
 Include conf/extra/httpd-vhosts.conf

然后,我转到 httpd-vhost.conf 文件并在我的新虚拟主机中添加:

# Virtual Hosts
#

<VirtualHost *:80>
    ServerName localhost
    ServerAlias localhost
    DocumentRoot D:/wamp/www
    <Directory  "D:/wamp/www/">
        Options +Indexes +Includes +FollowSymLinks +MultiViews
        AllowOverride All
        Require local
    </Directory>
</VirtualHost>
#
#
<VirtualHost *:80>
    ServerName site_name
    ServerAlias site_name
    DocumentRoot D:/wamp/www/site_name
    <Directory  "D:/wamp/www/site_name">
        Options +Indexes +Includes +FollowSymLinks +MultiViews
        AllowOverride All
        Require local
    </Directory>
</VirtualHost>

但是,在保存并重新启动 WAMP 服务后,我继续收到虚拟主机下 Site_name 的错误,即:ServerName site_name 在文件 D:/wamp/bin/apache/apache2.4.23/ 中有语法错误conf/extra/httpd-vhosts.conf.

我查看了站点名称服务器的 httpd-vhosts.conf 中的上述代码,但找不到任何语法错误。 localhost 虚拟主机可以工作,据我所知,site_name 服务器的语法是相同的。

我尝试在 apache 文件夹中运行 httpd.exe 以查看它是否会为我提供有关语法错误的更多详细信息,但是双击它时我无法运行它,而且我不知道如何从 cmd 提示符运行它...我试过了,但我一直收到某种套接字错误。

感谢您的帮助。

请有人帮忙弄清楚可能发生的事情。我错过了什么?

【问题讨论】:

【参考方案1】:

您不能在主机名中使用下划线。

【讨论】:

谢谢!后来我突然想到可能是它……可能是在你输入它的时候……我已经改变了它,不再有语法错误。 如果答案适合您,请将其标记为解决方案。谢谢。

以上是关于在 Wamp 中设置 VirtualHost 时出错 - 服务器名称在文件 httpd-vhosts.conf 中有语法错误的主要内容,如果未能解决你的问题,请参考以下文章

在 Windows 10 操作系统上安装 wamp 时出现 msvcr120.dll 丢失 wamp 错误

在 WAMP 环境中设置 Concerto 自适应测试平台时出错

WAMP 2.5 (Apache 2.4.9) 允许从 LAN 上的所有计算机进行访问

OSX Apache Virtualhost 仅返回默认页面

使用 WAMP / XAMPP 设置域

在supervisord中设置环境变量时出现Python键错误