[英]Apache local virtual host is listed but doesn't work
我需要将我的网站配置为在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文件中的Servername是localhost,它还包含:
听8050
和
听本地主机: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 stop
, apachectl start
和apachectl 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:前叉线程:否分支:是(可变进程计数)服务器使用...编译-D APR_HAS_SENDFILE -D APR_HAS_MMAP -D APR_HAVE_IPV6(启用了IPv4映射的地址)-D APR_USE_FLOCK_SERIALIZE -D APR_USE_PTHREAD_SERIALIZE -D SINGLE_LISTEN_UNSERIALIZED_ACCEPT -D APR_HAS_OTHER_CHILD -D AP_HAVE_RELIABLE_PIPED_LOGS -D DYNAMIC_MODULE_LIMIT / EXE = / DATE / ID = BIN -D /run/httpd.pid“ -D DEFAULT_SCOREBOARD =” logs / apache_runtime_status“ -D DEFAULT_ERRORLOG =” logs / error_log“ -D AP_TYPES_CONFIG_FILE =” / private / etc / apache2 / mime.types“ -D SERVER_CONFIG_FILE =” / private / etc /apache2/httpd.conf”
编辑:尝试使用其他端口:9050,但仍无法正常工作
检查是否有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缓存。
问题解决了。 很奇怪,看起来重启Apache和缓存命令有时还不够。 系统重新启动后,该消息更改为403-禁止。
我用lsof -nP -i4TCP:80 | grep LISTEN
检查了端口lsof -nP -i4TCP:80 | grep LISTEN
lsof -nP -i4TCP:80 | grep LISTEN
lsof -nP -i4TCP:8050 | grep LISTEN
lsof -nP -i4TCP:8050 | grep LISTEN
lsof -nP -i4TCP:9050 | grep LISTEN
lsof -nP -i4TCP:9050 | grep LISTEN
它显示了4个httpd进程,即使apache停止也正在监听:80,然后在重新启动后出现了一个监听正确端口的进程。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.