一、首先安装本机数据库mongo+redis
mongo 3.4.3
mongodb-linux-x86_64-rhel62-3.4.3.tgz
redis3.2.2
下载地址:http://download.redis.io/releases/redis-3.2.2.tar.gz
修改redis.conf 否则swoole框架无法连接redis https://blog.csdn.net/u011072139/article/details/64922917
bind 0.0.0.0
protected-mode no #关闭redis的保护模式
开启时指定redis.conf 否则开启有问题
./redis-server ../redis.conf
二、安装php解释器及依赖包(必须按顺序安装)
1.httpd2.4.3(Apache)
apr http://apr.apache.org/download.cgi
编译方式:./configure --proxy=/usr/local/apr
apr-util http://apr.apache.org/download.cgi
编译报错解决方案:https://blog.csdn.net/hanzheng260561728/article/details/79655043
expat-devel基于c的xml解析器 http://download.chinaunix.net/search/?q=expat&frmid=22
编译方式:./configure --proxy=/usr/local/apr
pcre(可以不用源码安装) https://ftp.pcre.org/pub/pcre/
build-essential(c++编译环境包) https://packages.ubuntu.com/bionic/build-essential
dpkg-dev
ncurses(基于文本终端的图形互动功能的动态库 http://download.chinaunix.net/download/0008000/7242.shtml
httpd
编译方式:
./configure --prefix=/usr/local/apache --with-apr=/usr/local/apr1.6 --with-apr-util=/usr/local/apr-util1.6 --enable-so -- enable-mods-shared=most
**编译出现问题的解决办法:https://blog.csdn.net/qq_41772936/article/details/80878635
开启tcp80端口的防火墙
/etc/httpd/conf/httpd.conf 配置文件中添加ServerName localhost:80
2、PHP解释器7.2.3 http://php.net/get/php-7.2.7.tar.gz/from/a/mirror
参照文档:https://blog.csdn.net/qq_34272964/article/details/79716548
编译方式: ./configure --prefix=/usr/local/php7 --with-apxs2=/usr/local/apache/bin/apxs --with-config-file- path=/usr/local/php7/etc --enable-fpm --without-gdbm
问题描述: --with-apxs2=path 基于Apache中apxs的路径,必须指定路径,不然libphp7.so不会生成
参考资料:https://stackoverf low.com/questions/11544059/passenger-apache-undefined-symbol-unixd-config
依赖库:libxml2
3、swoole2.1.3 https://github.com/swoole/swoole-src/releases
m4-1.4.9 http://ftp.gnu.org/gnu/m4/m4-1.4.9.tar.gz
autoconf-2.62 http://ftp.gnu.org/gnu/autoconf/autoconf-2.62.tar.gz
编译方式:./configure --with-php-config=/usr/local/php7/bin/php-config
问题描述:
yum install -y php-devel 安装后才产生php-config文件
4、phpredis https://github.com/phpredis/phpredis.git
编译方式:./configure --with-php-config=/usr/local/php7/bin/php-config
要下载和php7兼容的版本,否则编译出错
5、php_mongo https://pecl.php.net/package/mongodb
编译方式:./configure --with-php-config=/usr/local/php7/bin/php-config
6、ThinkPHP(不需要安装,去网上下载)
_STORAGE_WRITE_ERROR_问题: https://blog.csdn.net/shellshine/article/details/49824937
解决办法:chmod -R 777 Runtime/Cache
7、Apache和ThinkPHP关联
问题描述:前端页面显示不出来
参考:https://blog.csdn.net/weixin_37770023/article/details/78699491
解决办法:
在httpd.conf配置文件中配置 LoadModule rewrite_module modules/mod_rewrite.so
AllowOverride None 将None改为 All(这里只修改配置文件路径Directory中的AllowOverride)
重启Apache,prefect!!
8、zip:
编译方式:./configure --with-php-config=/usr/local/php7.2/bin/php-config
问题描述:要使用PHP的zipArchive首先你得安装zip,安装zip你首先又得安装libzip,然后libzip的版本要求是>= 0.11,于 是,下面解决。
参考:https://blog.csdn.net/Aaroun/article/details/78224283
问题描述2:网上下载的zip源码包编译失败(非php环境问题)
参考:https://blog.csdn.net/slyjit/article/details/72831656
解决办法:
使用php7源码包内的zip源码包编译安装(找的我好苦!!!)
路径:php-7.2.7/ext/zip 然后编译安装 --with-php-config=/usr/local/php7.2/bin/php-config