当前位置: 首页 > 知识库问答 >
问题:

为什么apache会拒绝连接到localhost 127.0。OSX上的0.1?

唐增
2023-03-14

尝试访问本地主机上的站点时,连接被拒绝。两天前,配置了多个虚拟主机后,设置工作正常。我不知道任何可能影响设置的更改。我昨天花了一整天的时间试图解决这个问题,但一直在兜圈子。

OS: OSX 10.11.16

httpd-V返回以下内容:

Server version: Apache/2.4.18 (Unix)
Server built:   Feb 20 2016 20:03:19
Server's Module Magic Number: 20120211:52
Server loaded:  APR 1.4.8, APR-UTIL 1.5.2
Compiled using: APR 1.4.8, APR-UTIL 1.5.2
Architecture:   64-bit
Server MPM:     prefork
   threaded:     no
   forked:     yes (variable process count)
Server compiled with....
 -D APR_HAS_SENDFILE
 -D APR_HAS_MMAP
 -D APR_HAVE_IPV6 (IPv4-mapped addresses enabled)
 -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=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="logs/error_log"
 -D AP_TYPES_CONFIG_FILE="/private/etc/apache2/mime.types"
 -D SERVER_CONFIG_FILE="/private/etc/apache2/httpd.conf"

httpd.conf配置为允许虚拟主机,httpd-vhosts.conf文件中没有任何更改。

LoadModule vhost_alias_module libexec/apache2/mod_vhost_alias.so
...
# Virtual hosts
Include /private/etc/apache2/extra/httpd-vhosts.conf

apachectl configtest返回:

Syntax OK

我已尝试运行127.0的端口扫描。0.1和http端口80不显示。这和被拒绝的联系让我觉得这就是问题所在,但我不知道为什么。OSX防火墙已关闭。我尝试过这里发布的解决方案,但没有解决。

我的 /etc/hosts文件是这样的:

#
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting.  Do not change this entry.
#    

127.0.0.1       localhost
255.255.255.255 broadcasthost
::1             localhost
fe80::1%lo0     localhost
127.0.0.1       site.local
127.0.0.1       othersite.local
...

我能127.0.0.1。我以前安装了家用程序来运行不同的PHP版本,但我已经删除了它,以尝试使系统恢复库存。我真的不知道下一步该尝试什么,任何帮助都将不胜感激。

共有3个答案

夔波
2023-03-14

经过几天的调试,我通过覆盖我的httpd解决了这个问题。conf文件,其中包含升级到osx elcapitan时创建的旧文件。

sudo cp httpd.conf~elcapitan httpd.conf

这样做后localhost又可以访问了。我不知道我以前的httpd.conf档案出了什么问题。我已经找了很多次问题,但从未发现任何问题。我甚至区分了这两个文件,试图看看问题出在哪里,但没有发现它会以这种方式失败的原因。

一旦localhost再次响应,我就完成了启用所需模块和重新配置虚拟主机的过程。

同样,我不知道另一个httpd出了什么问题。conf文件。也许它在某种程度上被破坏了。尽管如此,它还是以apachectl configtest未报告任何问题的方式默默失败。

因此,如果其他人有类似的问题,可能值得恢复到旧的httpd.conf文件。OSX通常在完成升级时创建备份。

莫宝
2023-03-14

您可以检查以确保您的 /usr/local/etc/apache2/2.4/httpd.conf配置文件中有听: 80

柴修筠
2023-03-14

这发生在我升级php时。下面的步骤让我回到了正轨。

通常,mac会在升级之前创建备份。因此,我们将使用httpd.conf的预更新版本

cd /etc/apache2/  
sudo mv httpd.conf httpd.conf-afterupdate  
sudo mv httpd.conf.pre-update httpd.conf  
sudo apachectl configtest  
sudo apachectl restart  
 类似资料:
  • 我试图从Java连接到MySQL,但我得到以下错误。 谢谢你的帮助,我对此很陌生。我肯定密码和用户名是正确的,所以我不确定从这里去哪里。下面是我连接数据库的代码:

  • 我知道在类似问题上已经发布了一些问题,但不幸的是,我仍然无法使以下命令正常工作: $sudo docker run hello world 无法在本地找到映像“hello world:latest”:docker:来自守护程序的错误响应:Gethttps://registry-1.docker.io/v2/: 拨打tcp 52.54.216.153:443:getsockopt:连接被拒绝。请参阅

  • 我试图从java应用程序连接到我的数据库,但它拒绝连接,给出的错误是这个。 搜索我发现问题不是代码,而是连接到我的本地主机,因为我可以连接到localhost如果我去我的网络浏览器,只是去'localhost',我不能做一个telnet到localhost或127.0.0.1,它拒绝连接。 我已经尝试了在web上找到的所有东西,创建了一个新的“hosts”文件,刷新了dns,重新启动了apache

  • 问题内容: 我正在尝试从另一个站点获取信息。当我尝试去做 它抛出一个。这是否意味着该站点将不允许自动连接?还有另一种获取此信息的方法吗? 问题答案: 这可能意味着几件事: 该站点有问题并且正在主动断开连接(拒绝与超时不同,拒绝完全没有响应) 中间人可能拒绝了您的连接,例如防火墙,尽管如果您可以通过浏览器访问该站点,则不太可能 您使用了错误的端口,即您输入https://时的意思是http://,反

  • 我正在尝试运行卡桑德拉,但每次它在连接时都会给出相同的错误...有什么我需要在配置文件或属性文件中编辑的吗? ('无法连接到任何服务器',{'127.0.0.1:9042 ':错误(61,"尝试连接到[('127.0.0.1 ',9042)]。最后一个错误:连接被拒绝")}) 启动cassandra时出错

  • 我知道有很多关于502坏网关的帖子,但是我还没有解决这个问题。我正在使用Docker Comment为Nginx和PHP-FPM创建单独的容器。 错误我得到加载PHP文件在浏览器(超文本标记语言文件渲染罚款): 我已经试着使用Unix套接字等工具调整各种配置好几个小时了,但仍然收到502个PHP文件错误。你能看出什么地方不对劲吗? 这是所有必需的文件。。 多克作曲家。yml: docker/ngi