Yab*_*ley 2 apache macos localhost
尝试访问本地主机上的站点时,连接被拒绝.两天前,设置正在运行,没有配置多个虚拟主机的问题.我不知道任何可能影响设置的更改.我昨天花了一整天时间试图解决这个问题,但一直在圈子里.
操作系统: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"
Run Code Online (Sandbox Code Playgroud)
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
Run Code Online (Sandbox Code Playgroud)
apachectl configtest返回:
Syntax OK
Run Code Online (Sandbox Code Playgroud)
我已经尝试运行端口扫描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
...
Run Code Online (Sandbox Code Playgroud)
我可以ping 127.0.0.1.我以前安装了自制软件来运行不同的PHP版本,但我已经删除它以尝试将系统恢复到库存.我真的不知道下一步该尝试什么,任何帮助都会非常感激.
hem*_*nto 10
升级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
Run Code Online (Sandbox Code Playgroud)
经过几天的尝试调试这个问题后,我通过用升级到 osx elcapitan 时创建的旧文件覆盖 httpd.conf 文件解决了这个问题。
sudo cp httpd.conf~elcapitan httpd.conf
Run Code Online (Sandbox Code Playgroud)
执行此操作后,可以再次访问本地主机。我不知道我以前的 httpd.conf 文件出了什么问题。我曾多次寻找问题,但从未发现任何问题。我什至比较了这两个文件,尝试看看问题出在哪里,但没有发现为什么它会以这种方式失败。
一旦本地主机再次响应,我就完成了启用我需要的模块并重新配置我的虚拟主机的过程。
同样,我不知道其他 httpd.conf 文件出了什么问题。也许它以某种方式被损坏了。不管怎样,它默默地失败了,apachectl configtest没有报告任何问题。
因此,如果其他人有类似的问题,可能值得恢复到较旧的 httpd.conf 文件。OSX 通常在升级完成后创建备份。
| 归档时间: |
|
| 查看次数: |
18861 次 |
| 最近记录: |