系列文章目录
前言
PHP是一种服务器端的编程语言,是一种简单、面向对象的、解释型的、健壮的、安全的、性能非常之高的、独立与架构的、可移植的、动态的编程语言,是一种广泛使用于开源项目的尤其适合Web开发场景的语言。
一、PHP介绍
PHP是一种服务器端的编程语言,是一种简单、面向对象的、解释型的、健壮的、安全的、性能非常之高的、独立与架构的、可移植的、动态的编程语言,是一种广泛使用于开源项目的尤其适合Web开发场景的语言。
二、Centos 安装 PHP
2.1、安装并启动 Nginx
yum install centos-release-scl scl-utils-build -y
yum install rh-nginx120 -y
systemctl start rh-nginx120-nginx
systemctl status rh-nginx120-nginx
curl localhost
2.2、安装并启动 mariadb
yum install rh-mariadb105 -y
systemctl start rh-mariadb105-mariadb
systemctl status rh-mariadb105-mariadb
# 初始化 密码
scl enable rh-mariadb105 bash
# 安全初始化密码:root/root
mysql_secure_installation
2.3、安装 rh-php
yum install rh-php73-* -y
systemctl start rh-php73-php-fpm
2.4、添加 Nginx 配置
vim /etc/opt/rh/rh-nginx120/nginx/nginx.conf
修改或者添加 php-fpm 配置
location ~ \.php$ {
root /var/www/html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
代码路径: /var/www/html;
2.5、Nginx 服务
systemctl restart rh-nginx120-nginx
systemctl restart rh-mariadb105-mariadb
systemctl restart rh-php73-php-fpm
三、使用 Docker 为 PHP 部署开发环境
FROM centos:7
# 镜像信息
LABEL maintainer="875347754@qq.com" version="2023.09.17" description="PHP-FPM"
ENV TZ=Asia/Shanghai
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
# 安装PHP
RUN yum install epel-release -y
RUN rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.9.rpm
RUN yum update -y && yum upgrade -y
RUN yum clean all
RUN yum makecache
RUN yum -y install −−enablerepo=remi-php83 php83 php83-php php83-php-xml php83-php-xmlrpc php83-php-pecl-mcrypt php83-php-fpm php83-php-pecl-apcu php83-php-mbstring php83-php-gd php83-php-json php83-php-pecl-json-post php83-php-pdo php83-php-mysqlnd php83-php-pecl-mysql php83-php-opcache php83-php-pear php83-php-soap php83-php-intl php83-php-pear
# RUN sed -i 's/^user\ =\ apache/user\ =\ nginx/' /etc/php-fpm.d/www.conf
# RUN sed -i 's/^group\ =\ apache/group\ =\ nginx/' /etc/php-fpm.d/www.conf
# RUN sed -i 's/^;listen\.owner\ =\ nobody/listen\.owner\ =\ nobody/' /etc/php-fpm.d/www.conf
# RUN sed -i 's/^;listen\.group\ =\ nobody/listen\.group\ =\ nobody/' /etc/php-fpm.d/www.conf
# RUN sed -i 's/^;listen\.mode\ =\ 0660/listen\.mode\ =\ 0660/' /etc/php-fpm.d/www.conf
RUN ln -sf /usr/bin/php83 /usr/bin/php
RUN ln -sf /opt/remi/php83/root/usr/sbin/php-fpm /usr/bin/php-fpm
RUN yum clean all
# 安装Nginx
RUN yum install nginx -y
COPY ./nginx/nginx.conf /etc/nginx/nginx.conf
# 复制代码
RUN mkdir -p /var/www/html
COPY ./website /var/www/html
EXPOSE 80
# 因为违法了单一指责,所以我们需要进入容器执行 php-fpm
CMD ["nginx","-g","daemon off;"]
代码地址:https://gitee.com/xiaoqingchun/phplearning