我是网络开发的新手,想在mac os Sierra上创建自己的本地服务器,以便进行一些开发。我已经按照(少数)教程开始运行apache,php和mysql,并且只进入了php部分,这是我目前失败的地方。
我设法通过http://localhost/~username访问localhost并在那里找到了我的目录,但是一旦我取消注释httpd.conf中的php LoadModule,我访问localhost的能力就失败了,我被抛出错误ERR_CONNECTION_REFUSED
。这是在我尝试使用
sudo apachectl -k restart
引发了这个错误:
httpd没有运行,试图启动 / usr / sbin / apachectl:第92行:11399分段错误:11 $ HTTPD“$ @”
来自tail -f /var/log/apache2/error_log
的错误日志,如下所示:
AH00112:警告:DocumentRoot [/usr/docs/dummy-host.example.com]不存在 AH00112:警告:DocumentRoot [/usr/docs/dummy-host2.example.com]不存在 [Mon May 01 19:33:52.138346 2017] [mpm_prefork:notice] [pid 3454] AH00163:Apache / 2.4.23(Unix)PHP / 7.1.1配置 - 恢复正常操作 [Mon May 01 19:33:52.138434 2017] [核心:通知] [pid 3454] AH00094:命令行:'/ usr / sbin / httpd -D FOREGROUND' [Mon May 01 19:37:22.694456 2017] [mpm_prefork:notice] [pid 3454] AH00169:抓住了SIGTERM,关闭了 AH00112:警告:DocumentRoot [/usr/docs/dummy-host.example.com]不存在 AH00112:警告:DocumentRoot [/usr/docs/dummy-host2.example.com]不存在 [Mon May 01 19:53:54.632167 2017] [mpm_prefork:notice] [pid 4059] AH00163:Apache / 2.4.23(Unix)PHP / 7.1.1配置 - 恢复正常操作 [Mon May 01 19:53:54.632251 2017] [core:notice] [pid 4059] AH00094:命令行:'/ usr / sbin / httpd -D FOREGROUND' [Mon May 01 20:04:26.379765 2017] [mpm_prefork:notice] [pid 4059] AH00169:抓住SIGTERM,关闭
我花了几个小时在stackoverflow以及其他来源上查看类似的主题,但无济于事。我对所有这些都是相当新的,因此我并没有过多地使用很多术语。从我的理解(无论它可能是什么),它可能与坏模块或php7没有正确连接?
我正在使用apache版本:
Server version: Apache/2.4.23 (Unix)
Server built: Aug 8 2016 16:31:34
php version 7.1.1
和configtest给了我以下内容:
AH00112:警告:DocumentRoot [/usr/docs/dummy-host.example.com]不存在 AH00112:警告:DocumentRoot [/usr/docs/dummy-host2.example.com]不存在 语法OK
非常感谢任何建议。完全消失了下一步该做什么:(
答案 0 :(得分:21)
启动Apache时出现“Segmentation fault”错误,因为Apache尝试同时加载旧版本和新版本的php。查看这些说明:https://coolestguidesontheplanet.com/upgrade-php-on-osx/,安装脚本创建一个文件,在
中加载新的php 7版本/etc/apache2/other/+php-osx.conf
脚本也假设在apache配置文件中禁用加载旧的php版本
/etc/apache2/httpd.conf
评论这一行:
#LoadModule php5_module libexec/apache2/libphp5.so
但它并没有为我做那件事。只要我手动注释掉,Apache就会再次使用
启动sudo apachectl -k restart
答案 1 :(得分:0)
如果要在localhost上创建虚拟主机,则应更改httpd-vhosts.conf,hosts文件和httpd.conf以启用虚拟主机....
但是
如果只想安装XAMPP或WAMP,则无需更改文件,在htdocs文件夹(XAMPP)或www文件夹(WAMP)中创建新文件夹,并输入地址栏,如下所示: localhost / newfolder
重新安装XAMPP并在 htdocs 文件夹中创建新的文件夹项目。
目录htdocs文件夹:/ Applications / XAMPP / xamppfiles / htdocs /(创建项目文件夹)
启用Apache和Mysql
并输入地址栏firefox或chrome:localhost / projectfoldername