首页 > 解决方案 > 使用 LAMP 在 MAC 上配置 Apache 虚拟主机

问题描述

我在 MAC 上的 Apache 虚拟主机配置遇到了挑战。

对于我的设置,我已将其添加127.0.0.1 test.wp到我的/private/etc/host文件中,并通过取消注释文件Include etc/extra/httpd-vhosts.conf中的行来包含它lampp/etc/httpd.conf

我还lampp/etc/extra/httpd-vhost.conf使用下面的虚拟主机配置编辑了我的文件;

<VirtualHost *:80>
  ServerName test.wp
  DocumentRoot "/opt/lampp/htdocs/test.wp"
  <Directory "/opt/lampp/htdocs/test.wp">
    Options Indexes FollowSymLinks Includes execCGI
    AllowOverride All
    Require all granted
  </Directory>
</VirtualHost>

当我访问http://test.wpsiteurlhome两者都被定义为http://test.wp我所看到It works!的而不是 WordPress 站点。

另一方面,当我将siteurl和都定义home为时http://test.wp:8080,我可以访问该地址的 WordPress 站点。

如何http://test.wp在默认端口 80 上为 WordPress 站点提供服务?

标签: wordpressvirtualhostlampp

解决方案


TL; 博士

在端口上侦听的DocumentRootApache 虚拟主机80的 指向提供It works!内容的目录(很可能在您的默认 Apache 配置中)。

您可能希望找到并编辑它以映射到您的 WordPress 站点的目录。

或者,您可以对其进行注释并在专用配置文件中定义您自己的虚拟主机,然后将其包含在您的主httpd.conf文件中。


您需要确保以下几点:

  1. 您的 WordPress 项目应该驻留在您的/opt/lampp/htdocs/test.wp目录中。

下面的代码片段说明了上述要求;

# Content of your /opt/lampp/htdocs/test.wp directory

/opt/lampp/htdocs/test.wp/
├── wp-admin/
│   └── [wp-admin directory contents]
├── wp-content/
│   └── [wp-content directory contents]
├── wp-includes/
│   └── [wp-includes directory contents]
├── index.php
├── license.txt
├── readme.html
├── wp-activate.php
├── wp-blog-header.php
├── wp-comments-post.php
├── wp-config-sample.php
├── wp-cron.php
├── wp-links-opml.php
├── wp-load.php
├── wp-login.php
├── wp-mail.php
├── wp-settings.php
├── wp-signup.php
├── wp-trackback.php
└── xmlrpc.php
  1. Apache80仅使用您在上面的帖子中共享的虚拟主机配置侦听端口(出于您的需要)。

  2. 检查您的 Apache 配置文件(默认和类似的)并注释您不需要的所有虚拟主机配置。

  3. 将您的 WordPresssiteurlhomeURL 定义为http://test.wp.

  4. 如下图所示编辑您的主机文件;

127.0.0.1       localhost
127.0.0.1       test.wp

推荐阅读