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
猜你喜欢
- 引言除非您正在对服务进行原型设计,否则您可能会关心应用程序的内存使用情况。内存占用更小,基础设施成本降低,扩展变得更容易/延迟。尽管 Go
- 非原创:英文版混乱的标记语言XHTML2/HTML5源文地址:漫画英文版源文地址感谢我的同事Kevin Jaw的翻译。他的博客地址是:Kev
- 目录:分析和设计组件编码实现和算法用 Ant 构建组件测试 JavaScript 组件本期,我们要讨论的话题是 JavaScript 的测试
- Mysql Explain 详解一.语法explain < table_name >例如: explain select * f
- 如果不是因为总监审查严格,一定要求这个细节解决掉,也许我也不会去深究根源性的解决办法,再此感谢MTIME负责而严格的同事。首先描述一下问题:
- 上次在“给网页添加打印按钮”一文中,有一段代码是“复制本文链接到剪贴板”js脚本,很可惜只能在IE中使用。这次在“淘宝网在线充值中心 - 荆
- asp编程手工定义参数的方法: Dim con As ADODB.Connection
- EXISTS该函数返回集合中第一个元素的索引,如果集合为空,返回NULLNULLNULLCollection.EXISTS(index)CO
- asp中利用XMLhttp对象获取远程的数据,然后用二进制输出到客户浏览器,让客户下载数据,此例从某一远程服务器获取一个压缩包,并且输出到浏
- 相信大家从去年圣诞节开始,逐渐发现淘宝网首页的标志开始有了新的形式,从过往的静态图片节日LOGO变成了FLASH的动画小故事LO
- 最近在改个程序用到了在js中设置css的float属性,以为和平常的写法一样,原来不是,只好去请教google,原来...首先大家先来看一下
- 关于oracle 优化的内容很多,概念庞杂,不过可以总结出一个大纲性的东西作为需要考虑的方向,然后再逐步细化。oracle优化按重要性需要考
- 本文实例讲述了Python实现的FTP通信客户端与服务器端功能。分享给大家供大家参考,具体如下:一 代码1、服务端代码import sock
- isNaN函数 返回一个 Boolean 值,指明提供的值是否是保留值 NaN (不是数字)。 NaN 即 Not a Number isN
- <% &nbs
- 最近正在用功的学习jQuery,在琢磨了不少别人写的功能之后,也开始尝试着自己开发一些功能。今天我做了一个简单的密码强度测试工具。这可功能的
- 好久没有更新博客了,今天看到论坛上有位朋友问起全屏布局,有点像vc的界面。来了兴趣,就写了一个。运用IE6的怪异模式,通过绝对定位来实现的。
- 使用SQL SERVER的[导入]功能,便可将access数据转换,但要注意原来的'自增字段'需要修改,将相应字段标识修改为
- 可能有些地方翻译得不好,请见谅在这个冠冕堂皇的标题之下,我想回答一个土方,有人在博客提出很久了。该土方很好的描述了很多图标设计师所面临的典型
- 北京时间2月15日据国外媒体报道,美国知名sns网站Facebook全球活跃用户量已突破1.75亿大关。数据显示,全球20%的网民都使用Fa