背景知识:
PHP安装:
•下载安装包:https://www.php.net/downloads.php
•解压,例如:/opt/php8010
•cd /opt/php8010
•./configure --prefix=/home/php --enable-fpm --with-fpm-user=tong --with-fpm-group=tong
–通过fpm方式支持PHP,安装时加–enable-fpm, 另外尽量不要用root用户安装
–/home/php 是自定义的安装php目录
–安装过程中,大概率提示缺少依赖,主要缺少的依赖:
–sudo apt-get update -y
sudo apt-get install -y libxml2-dev //sudo apt-get install -y libxml2 似乎不行
sudo apt-get install -y libsqlite3-dev
•make
•make install
•cd /home/php/bin
•./php -v // 查看php版本:例如:
配置
•配置 php-fpm.conf主文件:
–cd /home/php/etc
–cp php-fpm.conf.defaultf php-fpm.conf
–vim php-fpm.conf
•将 pid = run/php-fpm.pid 前的 ; 去掉。
•修改www.conf文件:
–cd /home/php/etc/php-fpm.d
–cp www.conf.default www.conf
–vim www.conf 设置其用户组、端口://默认端口9000
•#配置用户和组。
user = tong
group = tong
#在这里配php-fpm的端口
listen = 127.0.0.1:9090
•这里的端口涉及到php在THS中配置的访问链接,注意检查;
启动:
–cd /home/php/sbin
–./php-fpm
–若启动不报错,且有9090端口监听则启动正常。
确认:ps -ef | grep php-fpm
THS正常的PHP配置方法:
通过THS控制台或者{THS}/bin/https.conf 修改下述内容:
•侦听端口:共3处
•fcgi链接端口:请确认是否不是默认值9000
•
#放开部分
DocumentRoot “/home/linuxAli/tongweb/TongWeb7044/THS/mng”
<Directory /home/linuxAli/tongweb/TongWeb7044/THS/mng>
Order deny,allow
Allow from all
#默认部分–不需要放开
#ProxyPassMatch ^(/..jpg)$ !
#ProxyPassMatch ^(/..png)$ !
#ProxyPassMatch ^(/..js)$ !
#ProxyPassMatch ^(/..css)$ !
#ProxyPassMatch ^(/..bmp)$ !
#ProxyPassMatch ^(/..gif)$ !
#放开部分–注意检查是否需要修改此处端口
ProxyPassMatch ^/(..php(/.)?)$ fcgi://127.0.0.1:9090/home/linuxAli/tongweb/TongWeb7044/THS/mng/$1
#特别注意:要注释掉的部分
#ProxyPass / balancer://tongSSLCluster/ growth=99 maxattempts=0 nofailover=off lbmethod=bybusyness stickysession=ROUTEID
#ProxyPassReverse / balancer://tongSSLCluster/
•检查静态资源权限:
•配置位置:
•DocumentRoot “/home/linuxAli/tongweb/TongWeb7044/THS/mng”
<Directory /home/linuxAli/tongweb/TongWeb7044/THS/mng>
•检查权限:
–静态资源上级目录都改为755
•chmod 755 $(find /home/linuxAli/tongweb/TongWeb7044/THS/mng -type d) 或者
•chmod -R 755 /home/linuxAli/tongweb/TongWeb7044/THS/mng
•验证:
•namei -m ~/tongweb/TongWeb7044/THS/mng
•注意:chmod -R 755 /home/linuxAli/tongweb/TongWeb7044/THS/mng // 修改的是mng及其子文件夹的权限,并不能更改mng上级目录的权限,而如果其上级目录权限不是755,eg 644, 经验证,会出错!同理另一个命令;所以,要进行检查,确保该路径上的目录,都是755
–静态资源改为644
•chmod 644 $(find /home/linuxAli/tongweb/TongWeb7044/THS/mng -type f)
•静态资源权限是777,经验证也是可以访问的,开发建议设为644