我试图在Mac OS 10.8.5的Mini Mac中使用Apache 2.4.7和php5.5
Apache 2.4.7安装在这里的指示
运行apachectl -v,显示
Server version: Apache/2.4.7 (Unix) Server built: Mar 4 2014 19:23:56
在这里安装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
正如我已经链接的教程中所build议的,我修改了我的bashconfiguration文件
export PATH=~/bin:/usr/local/php5/bin:$PATH export MANPATH=/usr/local/apache/man:$MANPATH
我一直在尝试几个小时不同的解决scheme,这是我得到的。
如果有人能给我一些提示,我会很高兴,我很绝望…!
经过数小时和数小时的尝试,并做到这一点,我设法使其工作。
我将描述我所做的,以帮助其他人节省这些时间!
请注意,此解决方案适用于MAc OS X 10.8.5。 它可能不适合你!
以下是使用PHP 5.5工作的Apache 2.4.7
更新和下载你需要的工具。
1.1 – XCode。 从Apple Store免费获取。
1.2 – XCode命令行 转到XCode,首选项,下载并获取命令行。
1.3 – 自制。 使用以下命令:
ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
查看网站了解更多信息。
几个检查
2.1 – 检查是否有当前的apache或php instalation烦人。 为了做到这一点,我删除了他们,并寻找配置文件,以防万一,与命令
find /usr -name "apache" find /usr -name "httpd" find /usr -name "php
2.2 – 使用brew doctor确认没有配置烦人的设置。
brew doctor
2.3 – 通过确认以下命令不起作用 ,检查是否正确
php -v apachectl -v httpd -v
安装apache
3.1 – 从djl使用自制软件apache2 。
brew tap djl/homebrew-apache2 brew install djl/apache2/apache24
3.2 – 修改你的.bash_profile文件,使/ usr / local / bin成为优先文件夹(这样系统就可以从/ usr / sbin获取apache和php文件夹)
echo 'export PATH=/usr/local/bin:$PATH' >> ~/.bash_profile
3.3 – 确认Apache工作。 为此,请启动该服务并转到显示“It works”的localhost。 然后关闭它继续使用PHP。
sudo apachectl start (Go to browser and open localhost) sudo apachectl stop
安装php
4.1使用josegonzalez的自制软件
brew tap homebrew/dupes brew tap homebrew/versions brew tap josegonzalez/homebrew-php brew install php55
4.2如果由于以下错误而无法正常工作 :
cannot open /usr/share/httpd/build/config_vars.mk: No such file or directory at /usr/sbin/apxs line 217.
…这样创建一个符号链接:
cd /usr/share/ sudo ln -s /usr/local/Cellar/apache24/< apache version installed >/ httpd
…并再次执行安装。
安装的<apache版本>将取决于安装的版本。 在写这篇文章的时候,是2.4.10
告诉Apache关于它的新朋友。
5.1修改httpd.conf。 首先打开文件。
cd /usr/local/etc/apache2/ sudo nano httpd.conf
…然后在Loadmodulee部分添加php模块(搜索Loadmodulee)
Loadmodulee php5_module /usr/local/opt/php55/libexec/apache2/libphp5.so
…并在mime_module中添加php类型。 搜索mime_module,并在该部分中搜索#个过滤器
…在他们下面添加下一行。
# process php type files using apache php module AddType application/x-httpd-php .php
它告诉Apache在发送给客户端之前通过它的php处理器运行该文件。
… 保存并退出。
可选的,如果你想将网站存储在你的用户文件夹,而不是WebService。
6.1再次修改httpd.conf。 打开文件。
cd /usr/local/etc/apache2/ sudo nano httpd.conf
并在文件末尾添加以下行,替换为您的用户名。
serverName dev.local User <username> Group staff DocumentRoot "/Users/<username>/Sites" ErrorLog "/usr/local/var/log/apache-error.log" CustomLog "/usr/local/var/log/apache-access.log" common <Directory "/Users/<username>/Sites"> Options All AllowOverride All IndexOptions NameWidth=* Require all denied Require host localhost Require host 127.0.0.1 </Directory>
完成它!
7.1启动Apache服务
sudo apachectl start
7.2在Site文件夹的根目录下创建一个php文件(如果你做了第6步,在/Users//Sites/test.php中创建)
7.3打开它。
Go to Browser and localhost/test.php
祝你好运。
我猜你正在遇到来自apache2 the zend_parse_paramater
错误,同时加载libphp5.so:
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输出。 如果您收到类似以下内容的消息:
配置:警告:支持重新生成Zend / PHP解析器的野牛版本:1.28 1.35 1.75 1.875 2.0 2.1 2.2 2.3 2.4 2.4.1(found:none)。
尝试安装野牛:sudo apt-get install bison
然后使distclean然后./configure …然后使-i安装
这个指南是伟大的,除了步骤4.1,你必须安装这样的PHP:
brew install php55 --homebrew-apxs
这一行将自动将“Loadmodulee php5_module …”放在httpd.conf中,所以如果有人做了上面的其他步骤,只需删除PHP:
brew remove php55
然后用下面的命令安装php:
brew install php55 --homebrew-apxs
然后再也没有问题了!