我正尝试在我的带有Mac Os 10.8.5的Mini Mac中使用带有php5.5的Apache 2.4.7
按照here中的说明安装Apache2.4.7
运行apachectl -v,显示
Server version: Apache/2.4.7 (Unix)
Server built: Mar 4 2014 19:23:56按照here中的说明安装PHP5.5
运行php -v,显示
PHP 5.5.8 (cli) (built: Jan 12 2014 18:50:29)
Copyright (c) 1997-2013 The PHP Group
Zend Engine v2.5.0, Copyright (c) 1998-2013 Zend Technologies
with Zend OPcache v7.0.3-dev, Copyright (c) 1999-2013, by Zend Technologies
with Xdebug v2.2.3, Copyright (c) 2002-2013, by Derick Rethans我在apache http.conf文件中添加了以下行
LoadModule php5_module /usr/local/php5/libphp5.so但它似乎不起作用,因为当我尝试启动服务器时
sudo apachectl start它会产生以下错误
httpd: Syntax error on line 151 of /usr/local/apache-2.4.7/conf/httpd.conf:
Cannot load /usr/local/php5/libphp5.so into server:
dlopen(/usr/local/php5/libphp5.so, 10): Symbol not found:
unixd_config\n
Referenced from: /usr/local/php5/libphp5.so
Expected in: /usr/local/apache-2.4.7/bin/httpd in /usr/local/php5/libphp5.so按照我链接的教程中的建议,我用以下命令修改了我的bash配置文件
export PATH=~/bin:/usr/local/php5/bin:$PATH
export MANPATH=/usr/local/apache/man:$MANPATH我已经尝试了几个小时不同的解决方案,这就是我所得到的。
如果有人能给我一些提示,我会很高兴,我很绝望…!
发布于 2014-03-06 00:05:23
经过一小时又一小时的尝试,我终于让它工作起来了。
我将描述我做了什么,以帮助其他人节省这些时间!
请注意,此解决方案适用于MAc OS X 10.8.5。它可能不适用于您!
下面是让apache 2.4.7与php 5.5一起工作
您需要的
1.1 - XCode。从苹果商店免费获取。
1.2 - XCode命令行。转到XCode、Preferences、Downloads,然后获取命令行。
1.3 -自制。使用以下命令:
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)“
有关更多info.
2.1 -检查是否没有当前apache或php安装的烦人之处。为此,我删除了它们,并使用以下命令查找配置文件,以防万一
find /usr -name "apache“查找/usr -name "httpd”查找/usr -name "php
2.2 -使用brew doctor确认没有干扰设置的配置。
brew博士
2.3 -通过确认以下命令不起作用来检查是否正确
php -v apachectl -v httpd -v
3.1 -使用homebrew apache2 from djl。
brew tap djl/homebrew-apache2 brew安装djl/apache2/apache24
3.2 -修改您的.bash_profile,以使/usr/local/bin成为优先级文件夹(以便系统从那里获取apache和php,而不是其他文件夹,如/usr/sbin)
echo 'export PATH=/usr/local/bin:$PATH‘>> ~/.bash_profile
3.3 -确认apache工作正常。为此,请启动该服务并转到显示"It works“的localhost。然后关闭它以继续运行php。
sudo apachectl start (转到浏览器并打开localhost) sudo apachectl stop
4.1使用homebrew php from josegonzalez
brew tap homebrew/dupes brew tap homebrew/versions brew tap josegonzalez/homebrew-php brew install php55
4.2如果由于以下错误而导致无法正常工作,则:
无法打开/usr/share/httpd/build/config_vars.mk:在/usr/sbin/apxs第217行没有这样的文件或目录。
..。按如下方式创建符号链接:
cd /usr/share/ sudo ln -s /usr/local/Cellar/apache24/<安装的apache版本>/ httpd
..。并再次执行安装。
<安装的apache版本>将取决于安装的版本。在写这篇文章的时候,它是2.4.10
5.1修改httpd.conf。首先打开文件。
cd /usr/local/etc/apache2/ sudo nano httpd.conf
..。然后在LoadModule部分添加php模块(搜索LoadModule)
LoadModule php5_module /usr/local/opt/php55/libexec/apache2/libphp5.so
..。并在mime_module中添加php类型。搜索mime_module,然后在该部分中搜索# Filters
..。在apache php type files using Apache php module AddType application/x-httpd-php下面添加下一行.phpthat告诉Apache在将文件发送到客户机之前通过它的php处理器运行文件。
..。如果要将站点存储在用户文件夹中而不是WebService中,请保存并保存。
6.1再次修改httpd.conf。打开文件。
cd /usr/local/etc/apache2/ sudo nano httpd.conf
并在文件的末尾添加以下行,替换为您的用户名。
ServerName dev.local用户组员工DocumentRoot "/Users//Sites“ErrorLog "/usr/local/var/log/apache-error.log”CustomLog "/usr/local/var/log/apache-access.log“common <目录"/Users//Sites">选项所有AllowOverride所有IndexOptions NameWidth=*需要所有拒绝需要主机本地主机需要主机127.0.0.1
7.1启动apache服务
sudo apachectl启动
7.2在您的站点文件夹的根目录中创建一个php文件(如果您执行了步骤6,则在/Users// Sites /test.php中创建它)
7.3打开它。
转到浏览器和localhost/test.php
祝好运。
发布于 2014-03-05 03:36:40
我猜你在加载libphp5.so时遇到了来自apache2的the zend_parse_paramater错误:
httpd: Syntax error on line 151 of /usr/local/apache-2.4.7/conf/httpd.conf:
Cannot load /usr/local/php5/libphp5.so into server:
dlopen(/usr/local/php5/libphp5.so, 10): Symbol not found:看一下./configure输出。如果您收到类似以下内容的消息:
configure: warning: bison版本支持重新生成Zend/PHP解析器: 1.28 1.35 1.75 1.875 2.0 2.1 2.2 2.3 2.4 2.4.1 (found:无)。
尝试安装bison: sudo apt-get install bison
然后将distclean设置为./configure ...然后让-i安装
发布于 2016-06-16 08:49:40
这个指南很棒,除了4.1步,你必须像这样安装php:
brew install php55 --homebrew-apxs此行将把"LoadModule php5_module…“自动在httpd.conf中运行,所以如果有人执行了上面的其他步骤,只需使用以下命令删除php:
brew remove php55然后使用下面的代码行安装php:
brew install php55 --homebrew-apxs然后就不会再有问题了!
https://stackoverflow.com/questions/22181045
复制相似问题