centos7上编译安装php7以php-fpm方式连接apache
Windows  /  管理员 发布于 3年前   200
好几个月之间其实已经配置过LAMP LNMP等等一些配置,以前配置都是按照晚上抄的,基本都能配置出来,现重头学想自己配置下,但是发现好多配置都忘了 ,中间踩了几个坑,记录下,也更彻底的学习下..... ./configure --prefix=/usr/local/php7 --enable-fpm 以fpm模式安装,这个还可以改成 --with-apxs2=PATH模式,两者只能取其一 --enable-so --with-config-file-path=/etc 只能配置文件位置 --with-config-file-scan-dir=/etc/php.d 可以读取这个目录下的配合文件 --with-openssl --with-linxml-dir --with-bz2 --with-curl --with-pcre-dir --with-gd --with-jpeg-dir --with-png-dir --with-zlib-dir --with-mcrypt --with-mysql=/usr/local/mysql 这个选项是多余的,不生效,在php7中有其内置的mysql模块了 不用依赖于mysql或mariadb,所以说php安装顺序放在那里都行 --with-mysqli --with-mysql-sock --with-pdo-mysql --enable-sockets 这次编译的呢是php独立模式的,不是作为apache模块形式运行的,所有就开启了 --enable-fpm,这样的好处是php可以独立与任何一台机器运行 但是,上面的参数并不是完整的,有很多的参数没添加上。。 遇到的问题是,在使用phpMyadmin的时候 然后就开始在网上搜啊搜的,找了好多也没解决,不能说网上的方法不对,只是安装方式不同而已,网上的方法大部分是这样的 或者是这样的 但是我的都不是这样的,以上说的可能是直接yum安装的php,具体我的为什么出现这种情况 还需要看 ./configure的选项了,因为我没有 开启 ---enable-mbstring Enable multibyte string support 所有就会出现这样的问题,解决方案,动态编译mbstrin 也就这几部,首先cd 到php的源目录中的/ext/mbstring中 然后运行 /usr/local/php7/bin/phpize 会生成一个configure的文件 最后直接使用期编译安装到上面指定的位置即可,编译安装完以后会出现此模块的路径 ×××路径到php.ini中 如下图: 据对路径方式.... 然后重启php-fpm即可,当然想要和apache连接上还需要配置apachere配置文件 因为这里是以fpm形式安装的,所以和模块形式的配置是不一样的,除了添加 以外 还需要添加 以上两行,大概意思是让php请求的页面都走这个路径。。。 而以模块形式安装php的应配置为 到此基本就完事了,然后就是配置一下php的配置文件之类的... 另外php的配置文件挺多的,它为啥不能放在一个配置文件下面的:: 因此,这篇文章主要对这三个PHP配置文件的进行简单说明,具体的配置过程见本文末尾的 附录 部分。 1 配置php.ini 2 配置php-fpm.conf 3 配置www.conf(在php-fpm.d目录下) www.conf这是 php-fpm 进程服务的扩展配置文件: 通用二进制安装包安装mariadb出了几次错误,索性就编译安装了,但是。。真的挺慢的....... 其中用到了 mysql中的data专门放到一个目录或分区上 需要用到磁盘分区知识,然后使用初始化脚本来指定data的位置 然后设置mysql开机启动 把服务脚本添加到init.d目录下等 总结 以上所述是小编给大家介绍的centos7上编译安装php7以php-fpm方式连接apache,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对站的支持!cd /root/pakger/php-7.1.23/ext/mbstring/ /usr/local/php7/bin/phpize ./configure --with-php-config=/usr/local/php7/bin/php-configmake && make installcd /usr/local/php7/lib/php/extensions/no-debug-non-zts-20160303/
php.ini是php运行核心配置文件:######避免PHP信息暴露在http头中expose_php = Off######避免暴露php调用mysql的错误信息display_errors = Off######在关闭display_errors后开启PHP错误日志(路径在php-fpm.conf中配置)log_errors = On######设置PHP的扩展库路径extension_dir = "/usr/local/php7/lib/php/extensions/no-debug-non-zts-20141001/"######设置PHP的opcache和mysql动态库zend_extension=opcache.soextension=mysqli.soextension=pdo_mysql.so######设置PHP的时区date.timezone = PRC######开启opcache[opcache]; Determines if Zend OPCache is enabledopcache.enable=1######设置PHP脚本允许访问的目录(需要根据实际情况配置);open_basedir = /usr/share/nginx/html;
php-fpm.conf是 php-fpm 进程服务的配置文件:######设置错误日志的路径error_log = /var/log/php-fpm/error.log######引入www.conf文件中的配置include=/usr/local/php7/etc/php-fpm.d/*.conf
######设置用户和用户组user = nginxgroup = nginx######根据nginx.conf中的配置fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;设置PHP监听; listen = 127.0.0.1:9000 #####不建议使用listen = /var/run/php-fpm/php-fpm.sock######开启慢日志slowlog = /var/log/php-fpm/$pool-slow.logrequest_slowlog_timeout = 10s######设置php的session目录(所属用户和用户组都是nginx)php_value[session.save_handler] = filesphp_value[session.save_path] = /var/lib/php/session
您可能感兴趣的文章:
123 在
Clash for Windows作者删库跑路了,github已404中评论 按理说只要你在国内,所有的流量进出都在监控范围内,不管你怎么隐藏也没用,想搞你分..原梓番博客 在
在Laravel框架中使用模型Model分表最简单的方法中评论 好久好久都没看友情链接申请了,今天刚看,已经添加。..博主 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 @1111老铁这个不行了,可以看看近期评论的其他文章..1111 在
佛跳墙vpn软件不会用?上不了网?佛跳墙vpn常见问题以及解决办法中评论 网站不能打开,博主百忙中能否发个APP下载链接,佛跳墙或极光..路人 在
php中使用hyperf框架调用讯飞星火大模型实现国内版chatgpt功能示例中评论 教程很详细,如果加个前端chatgpt对话页面就完美了..Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号