Centos 安装 PHP7.4 和 Nginx的操作方法

作者:高雷啊 时间:2023-10-14 01:11:55 

准备

1、下载所需安装包

wget https://www.php.net/distributions/php-7.4.0.tar.gz
wget http://nginx.org/download/nginx-1.17.6.tar.gz

2、安装所需扩展


yum install -y gcc gcc-c++ make cmake bison autoconf wget lrzsz libtool libtool-ltdl-devel freetype-devel libjpeg.x86_64 libjpeg-devel libpng-devel gd-devel python-devel patch sudo openssl* openssl openssl-devel ncurses-devel bzip* bzip2 unzip zlib-devel libevent* libxml* libxml2-devel libcurl* curl-devel readline-devel sqlite-devel libsodium-devel https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/o/oniguruma-5.9.5-3.el7.x86_64.rpm https://dl.fedoraproject.org/pub/epel/7/x86_64/Packages/o/oniguruma-devel-5.9.5-3.el7.x86_64.rpm

安装PHP

1、解压-进入目录-生成编译文件


tar -zxvf php-7.4.0.tar.gz
cd php-7.4.0
./configure --prefix=/usr/local/php \
 --with-config-file-scan-dir=/usr/local/php/etc/ \
 --with-mhash --with-pdo-mysql \
 --with-openssl --with-mysqli \
 --with-iconv --with-zlib \
 --enable-inline-optimization \
 --disable-debug --disable-rpath \
 --enable-shared --enable-xml \
 --enable-bcmath --enable-shmop \
 --enable-sysvsem --enable-sysvshm --enable-mbregex \
 --enable-mbstring --enable-ftp \
 --enable-pcntl --enable-sockets \
 --with-xmlrpc --enable-soap \
 --without-pear --with-gettext \
 --enable-session --with-curl \
 --enable-opcache --enable-fpm \
 --without-gdbm --enable-fast-install \
 --disable-fileinfo --with-sodium

2、编译 并 安装

make && make install

3、配置文件

1.复制配置文件到安装目录


cp ~/php-7.4.0/php.ini-production /usr/local/php/etc/php.ini
cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
cp /usr/local/php/etc/php-fpm.d/www.conf.default /usr/local/php/etc/php-fpm.d/www.conf

2.修改PHP 配置文件 php.ini

vim /usr/local/php/etc/php.ini

内容修改如下:


;不显示错误,默认
display_errors = Off
;在关闭display_errors后开启PHP错误日志(路径在php-fpm.conf中配置),默认
log_errors = On
;字符集,默认
default_charset = "UTF-8"
;文件上传大小,默认值太小,建议修改10M
upload_max_filesize = 2M
;Maximum size of POST data that PHP will accept. 表单最大值,默认是8M,如果表单含有多图上传,大小可能不够。超过该大小后台收不到 表单数据
post_max_size = 8M
;设置PHP的扩展库路径,默认被注释了,之后一个文件夹 于 你/usr/local/php/lib/php/extensions/ 下的文件夹同名。
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20151012/"
;设置PHP的时区
date.timezone = PRC
;开启opcache,默认是0
[opcache]
; Determines if Zend OPCache is enabled
opcache.enable=1

3.修改php-fpm 的配置文件 php-fpm.conf

vim /usr/local/php/etc/php-fpm.conf

内容修改如下


; 去掉里分号,方便以后重启。建议修改
;Default Value: none
; 下面的值最终目录是/usr/local/php/var/run/php-fpm.pid
; 开启后可以平滑重启php-fpm
pid = run/php-fpm.pid
; 设置错误日志的路径,可以默认值
; Note: the default prefix is /usr/local/php/var
; Default Value: log/php-fpm.log, 即/usr/local/php/var/log/php-fpm.log
error_log = /var/log/php-fpm/error.log
; Log等级,可以默认值
; Possible Values: alert, error, warning, notice, debug
; Default Value: notice
log_level = notice
; 后台运行,默认yes,可以默认值
; Default Value: yes
;daemonize = yes
; 引入www.conf文件中的配置,可以默认值
include=/usr/local/php/etc/php-fpm.d/*.conf

4.修改 www.conf

vim /usr/local/php/etc/php.ini

内容修改如下:


; 设置用户和用户组,默认都是nobody。可以默认值
user = nginx
group = nginx
; 设置PHP监听
; 下面是默认值,不建议使用。可以默认值
listen = 127.0.0.1:9000
; 根据nginx.conf中的配置fastcgi_pass unix:/var/run/php-fpm/php-fpm.sock;
;listen = /var/run/php-fpm/php-fpm.sock
######开启慢日志。可以默认值
slowlog = /var/log/php-fpm/$pool-slow.log
request_slowlog_timeout = 10s

4、php-fpm 操作


/usr/local/php/sbin/php-fpm -t    # php-fpm检测配置文件是否正确
/usr/local/php/sbin/php-fpm     # php-fpm启动
kill -INT `cat /usr/local/php/var/run/php-fpm.pid`   # php-fpm关闭
kill -USR2 `cat /usr/local/php/var/run/php-fpm.pid`   #php-fpm平滑重启

安装nginx

1、解压-进入目录-生成编译文件


tar -zxvf nginx-1.17.6.tar.gz
cd nginx-1.17.6
./configure \
 --prefix=/usr/local/nginx \
 --with-http_stub_status_module \
 --with-http_ssl_module \
 --with-http_realip_module \
 --with-http_sub_module \
 --with-http_gzip_static_module \
 --with-pcre

2、编译 && 安装


make
make install

测试一下 /usr/local/nginx/sbin/nginx -t


nginx: configuration file /usr/local/nginx/conf/nginx.conf test is successful #测试成功

3、配置文件

1.配置 nginx.conf,执行 vim /usr/local/nginx/conf/nginx.conf

内容修改如下


#user nobody;
worker_processes 1;
error_log /www/logs/nginx/error.log;
error_log /www/logs/nginx/error_notice.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;
 #access_log logs/access.log main;
 sendfile    on;
 #tcp_nopush   on;
 #keepalive_timeout 0;
 keepalive_timeout 65;
 #gzip on;
 #显示目录
 #autoindex on;
 #显示文件大小
 #autoindex_exact_size on;
 #显示文件时间
 #autoindex_localtime on;
 include /www/conf/vhosts/*.conf;
}

2.添加网站配置文件

vim /www/conf/vhosts/default.conf

文件内容如下


server{
 listen 80;
 server_name localhost,www.test.com;
 root /www/web/default;
 location / {
   #开启 url 美化
   if (!-e $request_filename){
     rewrite ^/(.*) /index.php last;
   }
   index index.html index.php;
 }
 location ~ \.php$ {
   include fastcgi.conf;
   fastcgi_pass 127.0.0.1:9000;
   try_files $uri = 404;
 }
}

4、测试 配置

运行 /usr/local/nginx/sbin/nginx -t,若测试失败,返回检查执行步骤是否有错误

5、nginx 操作


/usr/local/nginx/sbin/nginx -t     # 检测配置文件是否正确
/usr/local/nginx/sbin/nginx       # 启动
/usr/local/nginx/sbin/nginx -s stop   # 关闭
/usr/local/nginx/sbin/nginx -s reload  #平滑重启

总结

以上所述是小编给大家介绍的Centos 安装 PHP7.4 和 Nginx的操作方法,希望对大家有所帮助.

来源:https://blog.csdn.net/qq_39612976/article/details/103603327

标签:centos,安装,php,nginx
0
投稿

猜你喜欢

  • js控制表单不能输入空格的小例子

    2013-07-21 11:58:51
  • 详解OpenCV-Python Bindings如何生成

    2021-03-26 17:33:52
  • 关于“简单,可依赖”

    2008-10-22 13:33:00
  • SQL Server数据库简体繁体数据混用的问题

    2008-12-05 16:07:00
  • Oracle11g简单安装和使用教程

    2024-01-18 19:28:47
  • python实现求最长回文子串长度

    2022-09-29 13:56:32
  • 使用python脚本实现查询火车票工具

    2021-03-10 05:48:54
  • python tkinter canvas使用实例

    2021-07-11 23:49:50
  • python基础编程小实例之计算圆的面积

    2023-06-07 06:33:14
  • PyQt5+QtChart绘制散点图

    2023-02-27 01:50:43
  • JavaScript实现点击自制菜单效果

    2024-05-02 17:24:53
  • PHP循环与分支知识点梳理

    2023-05-29 13:09:21
  • Python Json读写操作之JsonPath用法详解

    2022-09-20 04:18:48
  • TypeScript中extends的正确打开方式详解

    2024-02-25 07:14:18
  • Python处理mysql特殊字符的问题

    2024-01-17 01:28:38
  • 兼容低版本 IE 的 JScript 5.5 实现

    2008-07-01 12:48:00
  • socket连接关闭问题分析

    2021-09-11 01:48:18
  • 关于python线程池的四种实现方式

    2023-08-23 06:52:30
  • mysql 8.0.12 解压版安装教程

    2024-01-24 15:31:57
  • Golang回调函数与闭包和接口函数的定义及使用介绍

    2024-04-26 17:27:22
  • asp之家 网络编程 m.aspxhome.com