centos6.10环境下安装php7.4(基于WLNMP包)
centos6系统已经被官网停止维护,要安装软件必须用第三方的RPM包,下面使用yum安装php7.4正式版,当前基于WLNMP提供的一键安装包来安装
1、添加epel源
yum install epel-release
yum install epel-release
2、添加WLNMP一键安装包源
rpm -ivh http://mirrors.wlnmp.com/centos/wlnmp-release-centos.noarch.rpm
rpm -ivh http://mirrors.wlnmp.com/centos/wlnmp-release-centos.noarch.rpm
3、安装php7.4
yum clean all
yum install wphp74
yum clean all
yum install wphp74
在centos6系统安装完php7.4,默认会通过php-fpm方式自动启动,并且已经设置好了开机自启,只需要配置下nginx即可。
4、配置nginx
如果使用WLNMP提供的nginx,只需要在安装后取消include enable-php71.conf;注释即可
WLNMP安装nginx方法
yum install wnginx
如果当前使用的是非WLNMP提供的nginx,只需要在nginx中配置以下内容即可(fastcgi_pass unix:/tmp/php-fpm74.sock; 是关键AbiaoOK)
location ~ [^/]\.php(/|$)
{
try_files $uri =404;
fastcgi_pass unix:/tmp/php-fpm74.sock;
fastcgi_index index.php;
include fastcgi.conf;
}
更多相关内容可参考:https://www.wlnmp.com/
可以支持两种不同版本的php(5.6版本和7.4版本):
fastcgi_pass 127.0.0.1:9000; (php56w)
fastcgi_pass unix:/tmp/php-fpm74.sock; (wphp74)
在centos6系统安装完php7.4,默认会通过php-fpm方式自动启动,并且已经设置好了开机自启,只需要配置下nginx即可。
centos6安装了wphp74后, 原先php56w-gd不能用了,安装会提示冲突,那么后续版本智能用7.4啦? gd库冲突,暂时无法解决,只能2选一,那么就全部用PHP7.4吧!!
支持THINKPHP6伪静态规则,nginx配置代码(虚拟主机路径 /usr/local/nginx/conf/vhost):
server {listen 443 ssl;server_name testapp.com www.testapp.com;#ssl on;ssl_certificate /data/ssl/www.testapp.com;.pem; ssl_certificate_key /data/ssl/www.testapp.com.key; ssl_session_timeout 5m;#ssl_protocols TLSv1 TLSv1.1 TLSv1.2;#ssl_prefer_server_ciphers on; root /myweb/new/testapp.com; location / { index index.php index.html index.htm;if (!-e $request_filename) { rewrite ^/(.*)$ /index.php/$1 last; break; } }location ~ \.php/?.*$ {fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php; #fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params;set $temp_script_name $fastcgi_script_name; if ($fastcgi_script_name ~ "^(.+\.php)(/.+)$") { set $temp_script_name $1; set $path_info $2; } fastcgi_param PATH_INFO $path_info; fastcgi_param SCRIPT_FILENAME $document_root$temp_script_name; fastcgi_param SCRIPT_NAME $temp_script_name; }location ~ /\.ht {deny all; }
}server {listen 80;server_name testapp.com www.testapp.com;client_max_body_size 80m; #error_page 404 /data/ymg280/404.html;#error_page 500 502 503 504 /errors/default/50x.html;if ($host != 'www.testapp.com'){rewrite ^/(.*)$ http://www.testapp.com/$1 permanent;}root /myweb/new/qingmi.link;location / {index index.php index.html index.htm;if (!-e $request_filename) { rewrite ^/(.*)$ /index.php/$1 last; break; } }location ~ \.php/?.*$ {fastcgi_pass 127.0.0.1:9000;fastcgi_index index.php; include fastcgi_params; set $temp_script_name $fastcgi_script_name; if ($fastcgi_script_name ~ "^(.+\.php)(/.+)$") { set $temp_script_name $1; set $path_info $2; } fastcgi_param PATH_INFO $path_info; fastcgi_param SCRIPT_FILENAME $document_root$temp_script_name; fastcgi_param SCRIPT_NAME $temp_script_name; }location ~ /\.ht {deny all; }
}
安装过程可能遇到的问题,做了粗略的笔记:
安装redis扩展??
https://blog.csdn.net/u010227042/article/details/118766460
安装php-redis扩展
下载redis扩展
首先和redis一样,也需要下载php-redis的扩展。
在php官方redis扩展地址https://pecl.php.net/package/redis/找到我们所需要的扩展,下载即可。比如我们要安装5.2.1版本的php-redis扩展,执行命令:
#下载
wget http://pecl.php.net/get/redis-5.2.1.tgz
#解压
tar xzf redis-5.2.1.tgz
#进入目录
cd redis-5.2.1
编译安装
在刚刚下载redis扩展的源码目录下执行phpize(如果不知道phpize请往下看分解)
/usr/local/php/bin/phpize
执行 ./configure --with-php-config=/usr/local/php/bin/php-config
生成配置文件
编译 make && make install
记得make test 看一下编译过程的问题已经文件的存储路径
autoconf-2.6版本太低,不支持,要先安装autoconf-2.69
linux安装autoconf-2.69
————————————————
检查是否有安装autoconf其他版本:
rpm -qf /usr/bin/autoconf
如有安装,则先卸载相应版本,否则不用处理。执行以下命令卸载:
rpm -e --nodeps autoconf-2.63
wget ftp://ftp.gnu.org/gnu/autoconf/autoconf-2.69.tar.gz
解压安装:
tar zxvf autoconf-2.69.tar.gz
编译源文件:
cd autoconf-2.69
./configure --prefix=/usr/
make && make install
检查版本:
/usr/bin/autoconf -V
最后再: vim /usr/local/php/etc/php.ini
添加扩展: extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20190902/redis.so
重启php-fpm74:
service php-fpm74 restart
重启nginx:
service nginx restart
PHP输出的弱发现状态码不是200,而是500,那么很可能是权限设置的问题:
vim /usr/local/php/etc/php-fpm.conf
[global]
pid = /usr/local/php/var/run/php-fpm74.pid
error_log = /usr/local/php/var/log/php-fpm74_error.log
log_level = notice
;alert,error,warning,notice,debug[www]
listen.owner = nginx
listen.group = nginx
listen = /tmp/php-fpm74.sock
listen.backlog = -1
listen.allowed_clients = 127.0.0.1
listen.mode = 0666
user = nginx
group = nginx
pm = dynamic
pm.start_servers = 10
pm.min_spare_servers = 10
pm.max_spare_servers = 20
pm.max_children = 20
pm.max_requests = 1000
;pm = static
request_terminate_timeout = 100
request_slowlog_timeout = 0
slowlog = /var/log/php_slow.log
设置用户和用户组都为nginx, 跟文件夹所属用户组保持一致,另外可以设置文件夹权限为:777
[root@iZuf63qiu57nxc0lmplkxbZ redis-5.2.1]# chmod 777 /myweb/qmq -R
[root@iZuf63qiu57nxc0lmplkxbZ redis-5.2.1]# chown nginx:nginx /myweb/qmq -R
重启php-fpm74:
service php-fpm74 restart
重启nginx:
service nginx restart
相关文章:
centos6.10环境下安装php7.4(基于WLNMP包)
centos6系统已经被官网停止维护,要安装软件必须用第三方的RPM包,下面使用yum安装php7.4正式版,当前基于WLNMP提供的一键安装包来安装 1、添加epel源 yum install epel-release yum install epel-release 2、添加WLNMP一键安装包源 rpm -iv…...
Qt使用第三方库openssl进行RSA加密解密操作详解
一、openssl库的编译,可以参考文档: https://blog.csdn.net/liang19890820/article/details/51658574/ 因为我这里使用的是windows操作系统,可以直接下载exe格式的安装文件,直接安装即可,就包含了我们需要的头文件和库文件,省去了编译操作。exe安装文件下载地址: htt…...
激发数学思维:GPT-4实证研究探索挑战性数学问题
深度学习自然语言处理 原创作者:wkk 考虑到自然语言在许多科学和工程领域表达的数学问题的丰富性,使用大语言模型(LLM)来解决数学问题是一项有趣的研究工作。今天给大家介绍一篇微软研究院联合欧美高校关于如何使用GPT-4解决数学问题的研究论文。 之前的…...
如何配置IP地址
一.自动获取IP 1.dhclient 2.ifconfig 通过这个命令可以查看系统有几块网卡和网卡的IP。 如果您的Linux有多块网卡,那么在Linux中它会显示成eth1, eth2 依此类推 二.手动配置IP 如果您的虚拟机不能自动获取IP,那么只能手动配置,配置方法为&am…...
CentOS + Nginx 环境自动申请和部署Let‘s Encrypt免费SSL证书教程
文章目录 步骤 1:安装Certbot工具步骤 2:配置Nginx服务器步骤 3:生成SSL证书步骤 4:配置Nginx以使用SSL证书步骤 5:重新加载Nginx配置步骤 6:自动续期证书 本文介绍如何在 CentOS Nginx 环境下,…...
浅谈对BI工具价值的看法
浅谈对BI工具价值的看法 BI的定义看法 百度百科的定义: 商业智能(Business Intelligence,简称:BI),又称商业智慧或商务智能,指用现代数据仓库技术、线上分析处理技术、数据挖掘和数据展现技术…...
创建定时任务
import schedule import timedef task():print("Im working...")if __name__ __main__:schedule.every(10).seconds.do(task) # 每10秒一次schedule.every(10).minutes.do(task) # 10分钟一次schedule.every().hour.do(task) # 每小时schedule.every().day.at(&q…...
MyBatis的使用、Spring AOP、Spring事务
一、MyBatis 的使用 1、环境配置 1.1、建库建表 -- 创建数据库 drop database if exists mycnblog; create database mycnblog DEFAULT CHARACTER SET utf8mb4;-- 使⽤数据数据 use mycnblog;-- 创建表[⽤户表] drop table if exists userinfo; create table userinfo(id in…...
Apache Doris 冷热分层技术如何实现存储成本降低 70%?
在数据分析的实际场景中,冷热数据往往面临着不同的查询频次及响应速度要求。例如在电商订单场景中,用户经常访问近 6 个月的订单,时间较久远的订单访问次数非常少;在行为分析场景中,需支持近期流量数据的高频查询且时效…...
MySQL 两个备机同时挂掉故障分析
来源: 接报线上出现两个5.7.38的备库同时crash,crash堆栈相同,内容如下: stack_bottom 7fd7700b0d30 thread_stack 0x40000 /home/service/app/mysql33066/bin/mysqld(my_print_stacktrace0x2c)[0xf1062c] /home/service/app/m…...
序列化与反序列化深入理解
序列化与反序列化深入理解 1 介绍1.1 概述1.2 序列化实现的需求 2 常用序列化实现函数序列化语言内置开源序列化实现 3 各序列化实现比较4 各序列化实现概述XMLJSONProtobufJava 内置TLVVLE(Variable Length Encoding) 5 flex & bison5.1 介绍应用解…...
hudi系列-小文件优化
hudi使用mvcc来实现数据的读写一致性和并发控制,基于timeline实现对事务和表服务的管理,会产生大量比较小的数据文件和元数据文件。大量小文件会对存储和查询性能产生不利影响,包括增加文件系统的开销、文件管理的复杂性以及查询性能的下降。对于namenode而言,当整个集群中…...
mysql 是否包含 返回索引 截取字符串
是否包含返回索引 原文链接:https://www.cnblogs.com/shoshana-kong/p/16474175.html 方法1:使用通配符%。 通配符也就是模糊匹配,可以分为前导模糊查询、后导模糊查询和全导匹配查询,适用于查询某个字符串中是否包含另一个模糊…...
【LeetCode】74. 搜索二维矩阵
74. 搜索二维矩阵(中等) 方法一:二分查找 思路 总体思路 由于二维矩阵固定列的「从上到下」或者固定行的「从左到右」都是升序的 因此我们可以使用两次二分来定位到目标位置。 第一次二分: 从第 0 列中的「所有行」开始找&#x…...
Nginx rewrite
一.location 大致可以分为三类: 精准匹配:location / {…}一般匹配:location / {…}正则匹配:location ~ / {…} 1.location 常用的匹配规则: :进行普通字符精确匹配,也就是完全匹配。^~ &am…...
【数据分享】1929-2022年全球站点的逐日降水量(Shp\Excel\12000个站点)
气象数据是在各项研究中都经常使用的数据,气象指标包括气温、风速、降水、湿度等指标,说到常用的降水数据,最详细的降水数据是具体到气象监测站点的降水数据! 有关气象指标的监测站点数据,之前我们分享过1929-2022年全…...
【论文阅读】(2013)Exact algorithms for the bin packing problem with fragile objects
文章目录 一、摘要二、介绍三、之前在这个问题上的工作四、易碎物品背包问题的求解4.1 ILP模型4.2 基于KP01的方法4.3 动态规划 五、二元分支方案5.1 分支方案1(基于决策变量的分支)5.2 分支方案2(基于yj和xji的分支)5.3 将L2嵌入…...
K8S YAML 部署XXLJOB 集群
apiVersion: apps/v1 kind: Deployment metadata: labels: app: xxl-job-admin name: xxl-job-admin namespace: ccetest #根据情况修改namespace spec: replicas: 3 #根据情况修改副本数 selector: matchLabels: app: xxl-job-admin strat…...
Linux防火墙学习笔记3
iptables链的概念: 当客户端访问服务器端的Web服务的时候,客户端发送请求报文到网卡,而TCP/IP协议栈是属于内核的一部分。客户端的请求报文会通过内核的TCP协议传输到用户空间的Web服务,而客户端报文的目的地址为Web服务器所监听的…...
数仓用户行为数据分析
分层优点:复杂的东西可以简单化、解耦(屏蔽层作用)、提高复用、方便管理 SA 贴源 数据组织结构与源系统保持一致 shm 历史层 针对不同特征的数据做不同算法,目的都是为了得到一份完整的数据 PDM 明细层 做最细粒度的数据明细…...
Ubuntu系统下交叉编译openssl
一、参考资料 OpenSSL&&libcurl库的交叉编译 - hesetone - 博客园 二、准备工作 1. 编译环境 宿主机:Ubuntu 20.04.6 LTSHost:ARM32位交叉编译器:arm-linux-gnueabihf-gcc-11.1.0 2. 设置交叉编译工具链 在交叉编译之前&#x…...
设计模式和设计原则回顾
设计模式和设计原则回顾 23种设计模式是设计原则的完美体现,设计原则设计原则是设计模式的理论基石, 设计模式 在经典的设计模式分类中(如《设计模式:可复用面向对象软件的基础》一书中),总共有23种设计模式,分为三大类: 一、创建型模式(5种) 1. 单例模式(Sing…...
【kafka】Golang实现分布式Masscan任务调度系统
要求: 输出两个程序,一个命令行程序(命令行参数用flag)和一个服务端程序。 命令行程序支持通过命令行参数配置下发IP或IP段、端口、扫描带宽,然后将消息推送到kafka里面。 服务端程序: 从kafka消费者接收…...
《Qt C++ 与 OpenCV:解锁视频播放程序设计的奥秘》
引言:探索视频播放程序设计之旅 在当今数字化时代,多媒体应用已渗透到我们生活的方方面面,从日常的视频娱乐到专业的视频监控、视频会议系统,视频播放程序作为多媒体应用的核心组成部分,扮演着至关重要的角色。无论是在个人电脑、移动设备还是智能电视等平台上,用户都期望…...
微信小程序 - 手机震动
一、界面 <button type"primary" bindtap"shortVibrate">短震动</button> <button type"primary" bindtap"longVibrate">长震动</button> 二、js逻辑代码 注:文档 https://developers.weixin.qq…...
sqlserver 根据指定字符 解析拼接字符串
DECLARE LotNo NVARCHAR(50)A,B,C DECLARE xml XML ( SELECT <x> REPLACE(LotNo, ,, </x><x>) </x> ) DECLARE ErrorCode NVARCHAR(50) -- 提取 XML 中的值 SELECT value x.value(., VARCHAR(MAX))…...
OPENCV形态学基础之二腐蚀
一.腐蚀的原理 (图1) 数学表达式:dst(x,y) erode(src(x,y)) min(x,y)src(xx,yy) 腐蚀也是图像形态学的基本功能之一,腐蚀跟膨胀属于反向操作,膨胀是把图像图像变大,而腐蚀就是把图像变小。腐蚀后的图像变小变暗淡。 腐蚀…...
浪潮交换机配置track检测实现高速公路收费网络主备切换NQA
浪潮交换机track配置 项目背景高速网络拓扑网络情况分析通信线路收费网络路由 收费汇聚交换机相应配置收费汇聚track配置 项目背景 在实施省内一条高速公路时遇到的需求,本次涉及的主要是收费汇聚交换机的配置,浪潮网络设备在高速项目很少,通…...
论文阅读:Matting by Generation
今天介绍一篇关于 matting 抠图的文章,抠图也算是计算机视觉里面非常经典的一个任务了。从早期的经典算法到如今的深度学习算法,已经有很多的工作和这个任务相关。这两年 diffusion 模型很火,大家又开始用 diffusion 模型做各种 CV 任务了&am…...
【java】【服务器】线程上下文丢失 是指什么
目录 ■前言 ■正文开始 线程上下文的核心组成部分 为什么会出现上下文丢失? 直观示例说明 为什么上下文如此重要? 解决上下文丢失的关键 总结 ■如果我想在servlet中使用线程,代码应该如何实现 推荐方案:使用 ManagedE…...
