1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > mac编译安装apache+php+mysql开发环境

mac编译安装apache+php+mysql开发环境

时间:2021-02-20 21:00:04

相关推荐

mac编译安装apache+php+mysql开发环境

1. 安装apache

其实mac自带的有apache,直接配置启动就好,但是我不小心把重要文件给删掉了,所以只能自己下载了apache的源码包来编译安装,安装之前先要安装几个依赖包

# cd /user/denglinjie/software

下载依赖的几个包以及apache

wget -c /apache/apr/apr-1.5.2.tar.gzwget -c /apache/apr/apr-util-1.5.4.tar.gzwget -c /apache/httpd/httpd-2.4.25.tar.gz

安装apr

# tar zxvf apr-1.5.2.tar.gz

# cd apr-1.5.2

# ./configure --prefix=/user/denglinjie/software/apr-1.5.2

# make && make install

安装apr-util

# tar zxvf apr-util-1.5.4.tar.gz

# cd apr-util-1.5.4

# ./configure --prefix=/user/denglinjie/software/apr-util-1.5.4 --with-apr=/user/denglinjie/software/apr-1.5.2

# make && make install

安装apache

# tar zxvf httpd-2.4.25.tar.gz

# cd httpd-2.4.25

#./configure --prefix=/app/httpd-2.4.25 --with-apr=/app/apr-1.5.2/ \--with-apr-util=/app/apr-util-1.5.4/ --enable-so --enable-deflate --enable-expires \--enable-headers --enable-ssl --enable-rewrite --enable-mpms-shared=all \--with-mpm=prefork --enable-mods-shared=most

用上述命令报了错误如下:

出现configure: WARNING: OpenSSL version is too old;checking whether to enable mod_ssl... configure: error: mod_ssl has been requested but can not be built due to prerequisite failures;

错误原因:mac自带的openssl版本太低,

# openssl version

可以看到版本只有0.9.xx

所以需要升级openssl,升级可以自己下载源码包来进行安装升级,也可以用brew来进行升级

安装升级完openssl后,可能是我安装到了我自己的目录下,导致系统无法识别我安装的openssl,还是找的老版本的,所以上面我将--enable-ssl

去掉了,然后加了--with-ssl=/user/denglinjie/software/openssl,就是指定了下openssl的安装目录,然后configure顺利通过

# make

# make install

进入到apache的安装目录

#cd /user/denglinjie/software/httpd-2.4.25/bin

启动apache

# ./httpd -k start

报错:

Permission denied: make_sock: could not bind to address [::]:80Permission denied: make_sock: could not bind to address 0.0.0.0:80no listening sockets available, shutting downUnable to open logs

我看网上说这个的原因有很多种,但是最终解决我的问题是因为权限问题,我切换到root权限,启动httpd就成功了

然后在地址栏输入

127.0.0.1

看到打印出 IT works,则说明http服务器已经启动了

最后,我不可能每次启动http都要进入到它的安装目录去然后start啊?那多麻烦,于是将httpd添加到系统路径下

# vim /etc/profile

在文件里面添加:

export PATH=/user/denglinjie/software/httpd-2.4.25/bin:$PATH

保存后执行

# source /etc/profile 让设置生效

这里还碰到一个小插曲:

上面输出It works是因为apache服务器根目录下有一个Index.html文件,文件的内容是it works, 后来我修改了该文件

的内容,发现访问localhost,还是it works,而不是我修改后的内容,我抓狂了。而且即使我停止了我安装的apache,依然能看到IT works,擦,这是怎

么回事?难道我安装的服务器没有起作用?难道是我mac自带的apache没有删除干净?导致现在访问的还是自带的apache?于是我想方设法的去删除所

有自带apache的余孽,可是依然输出It works,我去,咋回事?

然后不经意在一个帖子上看到说,是缓存吧。缓存?一语惊醒梦中人啊。我换了个浏览器输入Localhost,哎呀我去,直接找不到,然后我把我

之前用的浏览器的缓存清理了下,也找不到了。哈哈。

2. 安装php

在apache安装完之后,可以在apache的根目录下写一个php文件,命名为info.php,内容如下

<?php

phpinfo();

?>

然后在地址栏输入localhost/info.php,发现,网页直接将内容打印了出来,这说明,apache已经安装成功,但是apache还无法解析识别php语句。

所以要安装php。

安装php就简单啦,一行命令搞定,但是前提是你的mac安装了homebrew

# brew install php70 --with-apxs2 --with-apache --with-gmp --with-imap --with-tidy --with-debug

安装好后,可以查看下版本

#php --version

可以看到打印出如下信息:

PHP 7.0.14 (cli) (built: Dec 31 18:27:22) ( NTS DEBUG )

Copyright (c) 1997- The PHP Group

Zend Engine v3.0.0, Copyright (c) 1998- Zend Technologies

但是我的好像还有警告

PHP Warning: PHP Startup: amqp: Unable to initialize module

Module compiled with build ID=API1012,NTS

PHP compiled with build ID=API1012,NTS,debug

These options need to match

in Unknown on line 0

Warning: PHP Startup: amqp: Unable to initialize module

Module compiled with build ID=API1012,NTS

PHP compiled with build ID=API1012,NTS,debug

These options need to match

in Unknown on line 0

好像是有什么版本没有匹配是行,这个问题我暂时没有处理

此时,需要修改apache的httpd.conf文件,这个文件在你的http-2.4.25的conf目录下,修改前请先备份

在文件中添加如下配置,让apache去加载php模块:注意哈,后面那一串是libphp7.so文件的位置,让apache去读取这个文件来加载php

LoadModule php7_module /usr/local/Cellar/php70/7.0.14_7/libexec/apache2/libphp7.so

还得修改AddType,添加如下配置

AddType application/x-httpd-php .php .php7 .php5

这指示apache可以识别的文件类型。

修改完成后 保存,重启apache,此时再在地址栏输入上述地址,就可以看到php的介绍,而不是文件的源代码啦。哈哈,大功告成

3. mysql的安装

mysql的安装我就不说了,这个比较easy,大家自己搞定吧。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。