MAC 和 LAMP 上的 Apache 虚拟主机配置
Apache virtual host configuration on MAC with LAMP
我在 MAC 上遇到 Apache 虚拟主机配置问题。
对于我的设置,我已将 127.0.0.1 test.wp
添加到我的 /private/etc/host
文件中,并通过取消注释 lampp/etc/httpd.conf
文件中的 Include etc/extra/httpd-vhosts.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.wp
时,当 siteurl
和 home
都定义为 http://test.wp
时,我看到 It works!
而不是 WordPress 站点。
另一方面,当我将 siteurl
和 home
都定义为 http://test.wp:8080
时,我可以访问该地址的 WordPress 站点。
如何在 http://test.wp
的默认端口 80 上提供 WordPress 站点服务?
TL;博士
侦听端口 80
的 Apache 虚拟主机的 DocumentRoot
指向提供 It works!
内容的目录(很可能在您的默认 Apache 配置中)。
您可能希望找到并编辑它以映射到您的 WordPress 站点的目录。
或者,您可以对其进行注释并在专用配置文件中定义您自己的虚拟主机,然后将其包含在您的主 httpd.conf
文件中。
您需要确保以下几点:
- 您的 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
Apache 仅在端口 80
上侦听(出于您所需的目的),您的虚拟主机配置在上面的 post 中共享。
检查您的 Apache 配置文件(默认和类似的细节)并注释所有您不需要的虚拟主机配置。
将您的 WordPress siteurl
和 home
URL 定义为 http://test.wp
.
如下图所示编辑您的主机文件;
127.0.0.1 localhost
127.0.0.1 test.wp
我在 MAC 上遇到 Apache 虚拟主机配置问题。
对于我的设置,我已将 127.0.0.1 test.wp
添加到我的 /private/etc/host
文件中,并通过取消注释 lampp/etc/httpd.conf
文件中的 Include etc/extra/httpd-vhosts.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.wp
时,当 siteurl
和 home
都定义为 http://test.wp
时,我看到 It works!
而不是 WordPress 站点。
另一方面,当我将 siteurl
和 home
都定义为 http://test.wp:8080
时,我可以访问该地址的 WordPress 站点。
如何在 http://test.wp
的默认端口 80 上提供 WordPress 站点服务?
TL;博士
侦听端口 80
的 Apache 虚拟主机的 DocumentRoot
指向提供 It works!
内容的目录(很可能在您的默认 Apache 配置中)。
您可能希望找到并编辑它以映射到您的 WordPress 站点的目录。
或者,您可以对其进行注释并在专用配置文件中定义您自己的虚拟主机,然后将其包含在您的主 httpd.conf
文件中。
您需要确保以下几点:
- 您的 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
Apache 仅在端口
80
上侦听(出于您所需的目的),您的虚拟主机配置在上面的 post 中共享。检查您的 Apache 配置文件(默认和类似的细节)并注释所有您不需要的虚拟主机配置。
将您的 WordPress
siteurl
和home
URL 定义为http://test.wp
.如下图所示编辑您的主机文件;
127.0.0.1 localhost
127.0.0.1 test.wp