列出了Apache本地虚拟主机,但不起作用

时间:2018-08-12 04:16:27

标签: apache

我需要帮助将我的网站配置为在本地服务器中作为Apache中的虚拟目录进行访问。 我正在尝试使用端口8050,当我打开localhost:8050时,它显示:

  

无法访问此网站   本地主机拒绝连接。 ERR_CONNECTION_REFUSED

当我尝试在浏览器中访问我的localhost:80时,它显示默认的空白页,并显示消息“ It Works”
如果我在配置中将virtualhost更改为* .80,它将继续显示默认消息“ It Works”,而不是我的页面。

apachectl -t返回语法OK
命令:
apachectl -t -D DUMP_VHOSTS返回:

  

VirtualHost配置:
     *:8050 personal.com(/private/etc/apache2/extra/httpd-vhosts.conf:24)

我的httpd.conf文件中的服务器名称是localhost,并且还包含:
听8050

听localhost:8050

这是我在etc / apache2 / extra / httpd-vhosts.conf中的httpd-vhosts:

<VirtualHost *:8050>
    ServerAdmin webmaster@dummy-host2.example.com
    DocumentRoot "/Users/renatobento/Documents/Projetos/Personal"
    ServerName personal.com
    ErrorLog "/private/var/log/apache2/personal.com-error_log"
    CustomLog "/private/var/log/apache2/personal.com-access_log" common
<Directory "/Users/renatobento/Documents/Projetos/Personal">
    Order allow,deny
    Allow from all
    Require all granted
</Directory>
</VirtualHost>

路径“ / Users / renatobento / Documents / Projetos / Personal”似乎正确,并且包含带有某些内容的简单index.html,该文件在具有以下文件协议的浏览器中可以使用:“ file:/// Users / renatobento / Documents / Projetos / personal / index.html“

已经执行 apachectl stopapachectl startapachectl restart千次

在stop命令之后,localhost:80仍然显示消息“ It Works”

我正在使用MAC OSX 10.3 High Sierra,Apache 2.4

  

服务器版本:Apache / 2.4.33(Unix)服务器内置:2018年4月3日   23:45:11服务器的模块编号:20120211:76服务器已加载:APR   1.5.2,APR-UTIL 1.5.4编译使用:APR 1.5.2,APR-UTIL 1.5.4体系结构:64位服务器MPM:前叉线程:否       分叉:是(可变进程计数)服务器编译时使用的...。   APR_USE_PTHREAD_SERIALIZE -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT -D   APR_HAS_OTHER_CHILD -D AP_HAVE_RELIABLE_PIPED_LOGS -D   DYNAMIC_MODULE_LIMIT = 256 -D HTTPD_ROOT =“ / usr” -D   SUEXEC_BIN =“ / usr / bin / suexec” -D   DEFAULT_PIDLOG =“ / private / var / run / httpd.pid” -D   DEFAULT_SCOREBOARD =“ logs / apache_runtime_status” -D   DEFAULT_ERRORLOG =“日志/错误日志” -D   AP_TYPES_CONFIG_FILE =“ / private / etc / apache2 / mime.types” -D   SERVER_CONFIG_FILE =“ / private / etc / apache2 / httpd.conf”

编辑: 尝试使用其他端口:9050,但仍无法正常工作

2 个答案:

答案 0 :(得分:1)

检查是否获得 DocumentRoot的权限

/Users/renatobento/Documents/Projetos/Personal

被设置为所有人可以访问

  

您的总体配置似乎不错。


检查您的 /etc/hosts 文件(如果其中包含类似内容

127.0.0.1    localhost
127.0.0.1    personal.com
  

要编辑此文件,请在终端中键入sudo nano /etc/hosts,然后在编辑后键入sudo killall -HUP mDNSResponder以刷新DNS缓存。

答案 1 :(得分:0)

问题解决了。 很奇怪,看起来重启Apache和缓存命令有时还不够。 系统重新启动后,该消息已更改为“禁止403”。

我检查了端口 lsof -nP -i4TCP:80 | grep LISTEN lsof -nP -i4TCP:8050 | grep LISTEN lsof -nP -i4TCP:9050 | grep LISTEN

它显示了4个httpd进程,即使apache停止也正在监听:80,然后在重新启动后出现了一个监听正确端口的进程。