Centos部署PHP

环境:Centos7

安装PHP步骤:

一:安装依赖

yum install epel-release -y

yum install gcc openssl-devel libxml2-devel bzip2-devel libmcrypt-devel sqlite-devel oniguruma-devel -y

二:下载php源码⽂件

 cd /usr/local/src

 wget https://www.php.net/distributions/php-7.4.11.tar.xz

三:编译安装php

tar xf php-7.4.11.tar.xz

cd php-7.4.11

./configure --prefix=/usr/local/php74 -enable-mysqlnd--with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-openssl --with-zlib --with-config-file-path=/etc/php74 --with-config-file-scan-dir=/etc/php.d --enable-mbstring --enable-xml --enable-sockets -enable-fpm --enable-maintainer-zts --disable-fileinfo

make && make install

四:⽣成配置⽂件

cp /usr/local/src/php-7.4.11/php.ini-production

/etc/php.ini

cd /usr/local/php74/etc/
 
cp php-fpm.conf.default php-fpm.conf

cd php-fpm.d/

cp www.conf.default www.conf

grep '^[^;]' www.conf
[www]
user = nginx
group = nginx
listen = 127.0.0.1:9000
pm = dynamic
pm.max_children = 5
pm.start_servers = 2
pm.min_spare_servers = 1
pm.max_spare_servers = 3

五:创建访问⽇志路径

mkdir -p /usr/local/php74/log

六: 启动并验证php

 /usr/local/php74/sbin/php-fpm -t
[24-Feb-2023 21:16:06] NOTICE: configuration file /usr/local/php74/etc/php-fpm.conf
test is successful

 cp -a /usr/local/src/php-7.4.11/sapi/fpm/php-
fpm.service /usr/lib/systemd/system/

 systemctl daemon-reload

 systemctl enable --now php-fpm
Created symlink from /etc/systemd/system/multi-user.target.wants/php-fpm.service to
/usr/lib/systemd/system/php-fpm.service.

 ss -lntp|grep 9000
LISTEN   0    128   127.0.0.1:9000           *:*         
users:(("php-fpm",pid=124723,fd=8),("php-fpm",pid=124722,fd=8),("php-
fpm",pid=124721,fd=6))

七:配置nginx⽀持fastcgi

vim /usr/local/nginx/conf/nginx.conf
#user nobody;
worker_processes  1;
#error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid    logs/nginx.pid;
events {
 worker_connections  1024;
}
http {
 include    mime.types;
 default_type application/octet-stream;
 sendfile    on;
 keepalive_timeout  65;
 server {
   listen    80;
   server_name localhost;
   location / {
     root  /data/wordpress;  #指定wordpress⽬录
     index index.php index.html index.htm;  #指定默认主⻚
   }
   error_page  500 502 503 504 /50x.html;
   location = /50x.html {
     root  html;
   }
   
   location ~ \.php$ {  #实现php-fpm
     root      /data/wordpress;
     fastcgi_pass  127.0.0.1:9000;
     fastcgi_index index.php;
     fastcgi_param SCRIPT_FILENAME  $document_root$fastcgi_script_name;
     include    fastcgi_params;
   }
 }
}

cd /usr/local/nginx/sbin/

 ./nginx -t
nginx: the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful

systemctl restart nginx

八:测试php

mkdir -p /data/wordpress

cd /data/wordpress/

 vim test.php
<?php
phpinfo();
?>
相关推荐
奇点 ♡1 小时前
【线程】线程的控制
linux·运维·c语言·开发语言·c++·visual studio code
Ja_小浩1 小时前
【计算机网络】理解应用层协议HTTP
计算机网络·http·php
学习3人组2 小时前
CentOS安装Hadoop系列
linux·hadoop·centos
Length-vision2 小时前
Linux入门学习:Linux调试器gdb使用
linux·学习
技术不支持2 小时前
WSL2+Ubuntu 22.04搭建Qt开发环境+中文输入法
linux·运维·服务器·qt·ubuntu
木人舟2 小时前
以root用户登陆ubuntu的桌面环境
linux·运维·ubuntu
几度热忱2 小时前
【Ubuntu】Ubuntu双网卡配置 实现内外网互不影响同时可用
linux·运维·ubuntu
打工人0072 小时前
ubuntu 执行定时任务crontab -e 无法输入的问题
linux·运维·ubuntu
IOT.FIVE.NO.12 小时前
ubuntu个人实用配置问题
linux·运维·ubuntu
_infinite_2 小时前
Ubuntu 与Uboot网络共享资源
linux·服务器·ubuntu