AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 819984
Accepted
pixel 67
pixel 67
Asked: 2016-12-11 09:32:16 +0800 CST2016-12-11 09:32:16 +0800 CST 2016-12-11 09:32:16 +0800 CST

localhost 端口 8080 没有响应,但使用 127.0.0.1:8080 确实有效

  • 772

当我尝试访问 locahost:8080 时,我得到

The localhost page isn’t working

localhost didn’t send any data.
ERR_EMPTY_RESPONSE

但如果我尝试:

127.0.0.1:8080,我得到了我正在寻找的响应

我相信这与我刚刚用自制 httpd24(httpd.2.4) 更新的 httpd (apache) 有关吗?

我按照该站点的更新说明进行操作: https ://getgrav.org/blog/macos-sierra-apache-multiple-php-versions

mac-osx local-system localhost
  • 1 1 个回答
  • 6595 Views

1 个回答

  • Voted
  1. Best Answer
    klanomath
    2016-12-23T09:22:44+08:002016-12-23T09:22:44+08:00

    使用 brew安装httpd24后,您将拥有两个完全不同的 Apache Web 服务器环境:

    1. brew的httpd24
    2. 原始的 macOS/OS X httpd

    两者都有不同的配置文件和 apachectl(和其他)二进制文件。第一个安装到 /usr/local/Cellar/httpd24 并且它的二进制文件链接到 /usr/local/bin。macOS 的 httpd 相关二进制文件位于 /usr/sbin。

    根据您的 PATH 变量(输入echo $PATH以获取它)sudo apachectl [cmd]控制第一个或第二个 Apache 环境。

    安装 brew 后,默认 PATH 应该有/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin利于 brew 的 httpd24。不过,您可以使用完整路径 (/usr/sbin/apachectl) 来控制 macOS 的 Apache。

    如果你有一个不同的路径,它不喜欢 /usr/local/bin 而不是 /usr/sbin 它是相反的。要获得喜欢的apachectl的路径, 您也可以简单地输入which apachectl.

    检查这个/usr/local/bin/apachectl -S应该产生:

    VirtualHost configuration:
    ServerRoot: "/usr/local/opt/httpd24"
    Main DocumentRoot: "/usr/local/var/www/htdocs"
    Main ErrorLog: "/usr/local/var/log/apache2/error_log"
    Mutex default: dir="/usr/local/var/run/apache2/" mechanism=default 
    Mutex mpm-accept: using_defaults
    PidFile: "/usr/local/var/run/apache2/httpd.pid"
    Define: DUMP_VHOSTS
    Define: DUMP_RUN_CFG
    User: name="daemon" id=1 not_used
    Group: name="daemon" id=1 not_used
    

    和/usr/sbin/apachectl -S

    VirtualHost configuration:
    ServerRoot: "/usr"
    Main DocumentRoot: "/Library/WebServer/Documents"
    Main ErrorLog: "/private/var/log/apache2/error_log"
    Mutex default: dir="/private/var/run/" mechanism=default 
    Mutex mpm-accept: using_defaults
    Mutex proxy-balancer-shm: using_defaults
    Mutex proxy: using_defaults
    PidFile: "/private/var/run/httpd.pid"
    Define: DUMP_VHOSTS
    Define: DUMP_RUN_CFG
    User: name="_www" id=70 not_used
    Group: name="_www" id=70 not_used
    

    没有相互使用的文件/文件夹。

    他们还使用不同的标准配置文件:

    /usr/local/bin/apachectl -t -D DUMP_INCLUDES
    Included configuration files:
      (*) /usr/local/etc/apache2/2.4/httpd.conf
    

    该命令不适用于原始(macOS)apachectl,但只会产生:语法OK。


    如果您同时运行两个 httpds(在此处配置不同的端口:80:macOS;8080 httpd24 - 在相应的配置文件中检查)ps -aef | grep httpd | grep -v grep将显示以下内容:

      0    76     1   0  4:54pm ??         0:00.13 /usr/local/opt/httpd24/bin/httpd -D FOREGROUND
      1   219    76   0  4:54pm ??         0:00.00 /usr/local/opt/httpd24/bin/httpd -D FOREGROUND
      1   220    76   0  4:54pm ??         0:00.00 /usr/local/opt/httpd24/bin/httpd -D FOREGROUND
      1   221    76   0  4:54pm ??         0:00.00 /usr/local/opt/httpd24/bin/httpd -D FOREGROUND
      1   222    76   0  4:54pm ??         0:00.00 /usr/local/opt/httpd24/bin/httpd -D FOREGROUND
      1   223    76   0  4:54pm ??         0:00.00 /usr/local/opt/httpd24/bin/httpd -D FOREGROUND
      1  4239    76   0  5:06pm ??         0:00.00 /usr/local/opt/httpd24/bin/httpd -D FOREGROUND
      0  8251     1   0  5:45pm ??         0:00.08 /usr/sbin/httpd -D FOREGROUND
     70  8261  8251   0  5:46pm ??         0:00.00 /usr/sbin/httpd -D FOREGROUND
    

    前七个 pid 属于 httpd24,后两个属于 macOS 的 httpd - 检查列出的二进制路径!和nmap localhost:

    Starting Nmap 7.31 ( https://nmap.org ) at 2016-12-22 18:00 CET
    Nmap scan report for localhost (127.0.0.1)
    Host is up (0.00039s latency).
    Other addresses for localhost (not scanned): ::1 fe80::1
    Not shown: 499 closed ports, 498 filtered ports
    PORT     STATE SERVICE
    80/tcp   open  http
    8080/tcp open  http-proxy
    

    在您的私人聊天消息中,您可以清楚地看到 httpd24根本没有运行,但 macOS 的 httpd是.

    要禁用 macOS 的 httpd,只需运行sudo /usr/sbin/apachectl stop并附加sudo launchctl unload -w /System/Library/LaunchDaemons/org.apache.httpd.plist(只是为了确定)。

    brew service start ...然后通过停止服务并安装真正的 plist 守护程序来转储该方法,如链接的操作指南中推荐的那样。

    sudo cp -v /usr/local/Cellar/httpd24/2.4.23_2/homebrew.mxcl.httpd24.plist /Library/LaunchDaemons
    sudo chown -v root:wheel /Library/LaunchDaemons/homebrew.mxcl.httpd24.plist
    sudo chmod -v 644 /Library/LaunchDaemons/homebrew.mxcl.httpd24.plist
    sudo launchctl load /Library/LaunchDaemons/homebrew.mxcl.httpd24.plist
    

    重启。fe80::1%lo0 localhost如果您在使用 localhost:8080 连接到本地开发人员站点时仍然遇到错误,请在 /etc/hosts 中注释掉。但在我的环境中,它适用于这条线。


    经过进一步调查后发现,错误配置的 Web 代理(ESET Internet Security/Antivirus 的一部分)是罪魁祸首。通过添加适当的localhost排除,应该可以解决问题。

    • 2

相关问题

  • Mac OS X:从 python 脚本中更改 $PATH

  • 登录网络用户帐户 (Open Directory) 时,Adobe Reader 不会启动

  • 如何在客户端计算机上阻止 Finder 的“记住此密码”?

  • 如何在 Mac OS X 中正确安装 Subversion?

  • 随行人员通过 VPN 连接到 Exchange 2007

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve