记录博客升级nginx和php7,以及优化处理

CentOS 7 升级 PHP 7.4 完整指南:Remi 源 + Apache/Nginx 配置 PHP 是 Web 应用的核心运行时环境,其版本直接决定语法支持、安全补丁扩展兼容性。CentOS 7 因 RHEL ABI 稳定策略,默认仅提供已停止维护的 PHP 5.4,无法满足 Laravel、WordPress、Drupal 等现代框架对 PHP 7.4+ 的硬性要求。升级本质是运行时环境重构,需绕过系统源限制,借助 Remi 源提供多版本共存、SELinux 友好、服务集成完备的 RPM 包。技术价值在于兼顾安全性(CVE 修复)、性能(OPcache 全局共享)与稳定性(不破坏 yum/sy 阅读详情
坊间传闻php7提速很多,于是就想升级php尝试下(之前是5.4的)。因为nginx的版本也有点旧,之前是1.5的,琢磨着也一起升级下。

一、升级nginx:
官网下载地址: https://nginx.org/en/download.html
有三个版本:Mainline version -> 主干版本;Stable version -> 当前稳定版本; Legacy versions -> 历史稳定版本。

我从历史稳定版本里下了nginx的1.8.1版本。
类似之前安装nginx的步骤: http://www.webyang.net/Html/web/article_127.html

configure时候,ngx_cache_purge-2.1报错。nginx1.8需要ngx_cache_purge-2.3版本支持。

于是从  http://labs.frickle.com/files  下载 ngx_cache_purge-2.3。
重新configure:

./configure --prefix=/usr/local/nginxnew --sbin-path=/usr/local/nginxnew/sbin/nginx --conf-path=/usr/local/nginxnew/conf/nginx.conf --error-log-path=/usr/local/nginxnew/log/error.log --http-log-path=/usr/local/nginxnew/log/access.log --pid-path=/usr/local/nginxnew/run/nginx.pid    --user=www --group=www --with-http_ssl_module --with-http_flv_module --with-http_stub_status_module --with-http_gzip_static_module --http-client-body-temp-path=/usr/local/nginxnew/tmp/client --http-proxy-temp-path=/usr/local/nginxnew/tmp/proxy/ --http-fastcgi-temp-path=/usr/local/nginxnew/tmp/fcgi/ --add-module=../ngx_cache_purge-2.3 --with-pcre=../pcre-8.34

我保留了两套nginx,所以新编译的目录是nginxnew

make && make install

一路顺畅。

运行:/usr/local/nginx/sbin/nginx
nginx: [emerg] mkdir() "/usr/local/nginxnew/tmp/client" failed (2: No such file or directory)
mkdir -p /usr/local/nginxnew/tmp/client

把nginx.conf 的运行用户改下:user www。其他都不变。

二、php升级:
官网下载: http://php.net/downloads.php ,我选的是7.0.28
wget http://php.net/get/php-7.0.28.tar.gz/from/a/mirror

安装参考: http://www.webyang.net/Html/web/article_129.html

./configure --prefix=/usr/local/phpnew --with-config-file-path=/usr/local/phpnew/etc --with-mysql --with-mysqli=/usr/local/mysql/bin/mysql_config --with-iconv-dir --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir --enable-xml  --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --with-curl --with-curlwrappers --enable-mbregex --enable-fpm --enable-mbstring --with-mcrypt=/usr/local/mcrypt --with-gd  --enable-gd-native-ttf --with-openssl --with-mhash --enable-pcntl --enable-sockets --with-ldap --with-ldap-sasl --with-xmlrpc --enable-zip --enable-soap --with-pear   --enable-pdo --with-pdo-mysql --with-gettext --enable-exif --enable-wddx --enable-calendar --enable-ftp  --enable-dba --enable-sysvmsg  --enable-sysvshm --enable-debug --enable-maintainer-zts --enable-embed --with-pcre-regex --enable-gd-jis-conv --with-fpm-user=www --with-fpm-group=www --enable-sockets

php同样保留了两套,方便出问题来回切,所以新编译目录是phpnew

/usr/local/phpnew/sbin/php-fpm 启动php-fpm
ERROR: failed to open configuration file '/usr/local/phpnew/etc/php-fpm.conf': No such file or directory (2)
cp /usr/local/phpnew/etc/php-fpm.conf.default  /usr/local/phpnew/etc/php-fpm.conf

注意php.ini默认没有,需要从源码中复制过来(源码我的在opt目录,production生产配置,develop开发配置)
cp /opt/php-7.0.28/php.ini-production /usr/local/phpnew/etc/php.ini

另外如果如果两套php-fpm都需要的话,这个就得改下端口。我的是php-fpm都在跑,所以新php-fpm改了端口,9001。

至此升级完毕。

升级php7后,很早的时候就看到php鸟哥的文章: http://www.laruence.com/2015/12/04/3086.html

优化php7的方案:
1、Opcache
php7默认安装了Opcache,只要开启就好:
zend_extension=opcache.so
opcache.enable=1
opcache.enable_cli=1

2、gcc升级

gcc的源码还没传完,所以待续中,看了现有的是4.6

下载gcc版本(要下很久):
wget http://ftp.tsukuba.wide.ad.jp/software/gcc/releases/gcc-5.2.0/gcc-5.2.0.tar.bz2
tar -xf gcc-5.2.0.tar.bz2
cd gcc-5.2.0

执行download_prerequisites脚本,下载gcc依赖文件和库(这个也要蛮久):
./contrib/download_prerequisites
mkdir gcc-temp
cd gcc-temp
../configure --enable-checking=release --enable-languages=c,c++ --disable-multilib

编译需要蛮久,有人用make -jn(n表示使用n个核心,根据你的CPU来指定。)
make
make install

gcc -v查看
gcc 版本 5.2.0 (GCC)

3、Opcache file cache
开启Opcache File Cache(实验性), 通过开启这个, 我们可以让Opcache把opcode缓存缓存到外部文件中, 对于一些脚本, 会有很明显的性能提升.

opcache.file_cache=/tmp

最后看了博客的访问速度,确实提升了不少,可恶的是百度的推送、分享以及cnzz的统计占了百分之八十左右的时间。博客地址:www.webyang.net

至此,全文完

Kohana PHP框架在Debian 7上的Nginx+PHP-FPM部署实战 Kohana是PHP早期面向对象MVC框架的代表作,其轻量架构、请求生命周期控制与模块化设计至今仍具工程参考价值。本文从PHP Web服务基础原理出发,解析Nginx事件驱动模型与PHP-FPM进程池协同机制如何支撑高并发、低资源消耗的稳定运行;强调Debian 7等长期稳定发行版在工业控制、嵌入式网关等场景中不可替代的技术价值;深入探讨Kohana多应用实例共存、自动加载路径控制、错误日志与Nginx请求ID联动等关键能力。内容覆盖PHP-FPM socket权限配置、Nginx try_files路由逻 阅读详情

相关推荐

CentOS 7 部署 LEMP 栈:Nginx+PHP-FPM+MariaDB 实战指南

LEMP 是 Linux、Nginx、MySQL(或 MariaDB) PHP 构成的高性能 Web 技术栈,其核心在于 Nginx 的事件驱动架构与 PHP-FPM 的进程管理机制协同工作,显著优于传统 Apache 的多进程模型。该架构具备高并发处理能力、低内存占用强隔离性,广泛应用于企业级网站、CMS(如 WordPress)及云原生边缘服务。在 CentOS 7 这一长期支持、SELinux 与 systemd 深度集成的企业级系统上部署 LEMP,不仅能夯实 Linux 服务器运维基础,还可平

angw337679452的博客 380

ngx_php7:ngx_php7-用于nginx模块的嵌入式php7脚本语言。 ngx_php的主线开发版本

ngx_php7 ngx_php7是高性能Web服务器nginx的扩展模块,它实现嵌入式php7脚本来处理nginx的位置变量。 ngx_php7借鉴了的设计,致力于提供比php-cgi,mod_phpphp-fpmhhvm具有明显性能优势的无阻塞Web服务。 ngx_php7不想替换任何东西,只想提供一个解决方案。 有一个的旧版本,它记录了我过去的一些代码实践,并且也很有价值。 目录 用于PHPNginx API 用于PHPNginx非阻塞API Nginx常数 版权许可 官方php有什么不同 全局变量在每个请求中都是不安全的 类的静态变量在每个请求中都是不安全的 不要设计单例模式 本机IO功能可以正常工作,但是会减慢Nginx的速度 要求 仅Linux PHP-7。*〜PHP-8。* nginx-1.4.7nginx-1.19.5 安装 编译安装

Nginx直连Memcache实现零PHP开销缓存

Web缓存是提升高并发网站性能的基础技术,其核心原理在于将动态计算结果提前存储并复用,从而规避重复执行带来的资源消耗。传统PHP层缓存虽能减少数据库查询,却无法绕过PHP解释器启动、文件加载函数调用等固有开销,导致90%以上响应时间浪费在非业务逻辑上。而Nginx原生缓存机制通过memc-nginx-module与srcache-nginx-module组合,使缓存查询成为请求处理的第一环节——在毫秒级内完成key生成、Memcache直连与HTML返回,彻底跳过PHP生命周期。该方案显著提升QPS与首屏

dejz8829的专栏 381

ngxphp7tracker是ngxphp7的分支

ngx_php7_tracker是ngx_php7 的分支,追踪php7脚本运行的opcode、函数栈调用的nginx模块

nginx版本升级

升级之前,确保备份Nginx的配置文件其他重要数据,以防发生意外情况。下载最新版本的Nginx源代码压缩包,或使用包管理工具获取新版本。是根据你的需求添加的其他编译选项。运行以下命令配置编译选项,其中。是你下载的Nginx版本号。

qq_51545656的博客 957

Nginx 升级指南 - 提升 PHP 性能

完成 Nginx PHP升级优化后,务必进行全面的测试监测以确保一切正常运行。完成 Nginx PHP升级优化后,请进行全面的测试监测,以确保一切正常运行。但是,请记住在进行任何升级优化之前备份配置文件,并进行充分Nginx 升级指南 - 提升 PHP 性能。但在进行任何升级优化之前,请记得备份配置文件,并进行充分的测试监测。在开始升级过程之前,请确保对现有的 Nginx PHP 配置文件进行备份。在升级 Nginx 后,我们需要针对 PHP 进行优化,以提高网站的性能。

qq_37934722的博客 256

laravel+nginx项目部署(php7.1)

2020.3.21部署laravel项目至一个带有yum的centOS 7 服务器的一些总结 1.更新yum yum -y update 2.yum安装git 2.1查看系统是否已经安装git git --version 2.2安装git yum install -y git 3.git下载项目 4.安装nginx 4.1 安装前准备(由于执行了1的更新,所以此步忽略) yum in...

a26637896的博客 4167

php查看opcache是否开启,opcache已启用,但php-i显示它已禁用

我安装了nextcloud,在summary窗口中它一直告诉我opcache没有启用。我已经启用了它,我看到了关于它是否真的启用的相互矛盾的信息。ubuntu 18.04.1 php 7.2.11-2版本$ sudo cat /etc/php/7.2/apache2/php.ini | grep opcache[opcache]opcache.enable=1opcache.enable_cli=...

weixin_36084318的博客 2104

nginx php7提速,记要博客升级nginxphp7,以及优化处理

坊间传闻php7提速很多,于是就想升级php尝试下(之前是5.4的)。因为nginx的版本也有点旧,之前是1.5的,琢磨着也一起升级下。一、升级nginx:官网下载地址:https://nginx.org/en/download.html有三个版本:Mainline version -> 主干版本;Stable version -> 当前稳定版本; Legacy versions -&...

weixin_32770297的博客 181

Ubuntu 20.04 搭建 LEMP 栈:Nginx+PHP7.4+MySQL 全流程实战

LEMP 栈(Linux + Nginx + MySQL + PHP)是 Web 服务最经典、最稳定的生产级基础架构之一,其核心在于 Nginx 的事件驱动模型与 PHP-FPM 的进程管理协同机制。理解该栈不仅涉及组件安装,更需掌握 Unix socket 通信、systemd 服务治理、MySQL 认证插件兼容性及 PHP 扩展加载原理等底层知识。它广泛应用于 WordPress、Laravel 等主流 PHP 框架的部署运维,也是排查 502 Bad Gateway、连接拒绝、扩展缺失等高频问题的技术

weixin_30443813的博客 434

Ubuntu 16.04 LEMP环境搭建:Nginx+MySQL+PHP实战配置指南

LEMP(Linux+Nginx+MySQL+PHP)是经典的高性能Web技术栈,其核心在于Nginx的事件驱动模型、MySQL的关系型数据管理能力与PHP的动态脚本执行机制三者协同。相比LAMP,LEMP凭借更低内存占用、更高并发处理能力及更优静态资源服务效率,成为资源受限场景(如1GB VPS、老旧服务器、嵌入式网关)的首选架构。在Ubuntu 16.04这一长期支持但已归档的系统上,精准匹配Nginx 1.10、MySQL 5.7PHP 7.0的版本特性与兼容性陷阱,是实现稳定运行的关键——既要规避

weixin_34198762的博客 389

Nginx+PHP-FPM部署实战:从环境搭建到性能优化全解析

在Web开发领域,服务器部署是连接开发与上线的关键环节,其核心在于Web服务器与后端语言的协同工作。Nginx作为高性能的Web服务器,采用事件驱动的异步非阻塞模型,能有效应对高并发场景,解决了传统服务器的C10K问题。PHP-FPM作为PHP的FastCGI进程管理器,通过高效的进程管理通信协议,专门负责解析PHP代码。两者结合形成了经典的LEMP(Linux, Nginx, MySQL, PHP)技术栈,为动态网站提供了稳定、高效的处理能力。这种架构广泛应用于企业官网、电商平台内容管理系统,能够显著

weixin_34221276的博客 356

Ubuntu 20.04 搭建 LEMP 栈:Nginx+PHP-FPM+MySQL 全流程实战

LEMP 技术栈(Linux-Nginx-MySQL-PHP)是 Web 服务部署的基础架构范式,其核心在于事件驱动的 Nginx 与解耦式 PHP-FPM 的协同机制,区别于传统 Apache 的进程模型,具备高并发、低延迟强隔离性优势。该架构依托 Linux 系统级控制、Nginx 反向代理能力、MySQL 关系型存储及 PHP 动态执行引擎,构成可独立运行的 Web 应用交付闭环。在教学与轻量生产场景中,Ubuntu 20.04 因其 LTS 稳定性、APT 包管理成熟度及组件版本兼容性(如 Ngi

all00747的博客 460

WordPress 500错误排查:从NGINXPHP到MySQL的全链路诊断

500 Internal Server Error 是 Web 应用最典型的服务器端错误,本质是后端执行流程在某环节中断后返回的 HTTP 状态码。其底层原理涉及请求生命周期中的多层协作:Web 服务器(如 NGINX)接收请求并转发,应用服务器(如 PHP-FPM)解析执行脚本,框架(如 WordPress)加载逻辑,最终与数据库(MySQL)交互。技术价值在于它不掩盖问题,而是精准暴露执行链中的薄弱点——可能是 PHP 语法错误、内存耗尽、MySQL 连接失败或 NGINX 配置失当。典型应用场景包括

weixin_30787531的博客 359

基于Docker与Nginx的Halo博客部署实战:从零搭建现代化个人网站

在当今的Web开发与部署实践中,容器化技术已成为实现环境一致性简化运维流程的核心工具。Docker通过将应用及其依赖打包成标准化的容器镜像,从根本上解决了“开发与生产环境差异”的经典难题,使得应用的部署从复杂的手动配置转变为可重复的流水线作业。其技术价值在于提供了轻量级的虚拟化、快速启动易于扩展的能力,极大地提升了开发部署效率。结合高性能的Web服务器Nginx作为反向代理,不仅能高效处理静态资源、提升访问速度,还能实现负载均衡SSL/TLS加密,为应用提供安全、稳定的对外服务入口。这一组合在个人博客

weixin_33690367的博客 335

CentOS 7Nginx Server Blocks实战配置指南

Server Blocks是Nginx实现虚拟主机的核心机制,本质是通过server_name、rootlocation等指令完成请求的域名识别、路径映射与上下文隔离。其原理基于哈希匹配与多级location优先级算法,技术价值在于轻量高效、配置解耦、安全边界清晰,天然支撑多站点托管、微服务反向代理及HTTPS分流等生产场景。相比Apache VirtualHost,它更契合容器化与云原生架构对配置可维护性与自动化部署的要求。本文聚焦CentOS 7 Minimal环境下的实操落地,涵盖conf.d目录规

闲谈 507

CentOS相关-Nginx使用记录

Nginx简介 ​ Nginx是一个高性能的HTTP反向代理服务器,也是一个IMAP/POP3/SMTP代理服务器。 ​ Nginx是一款轻量级的Web服务器/反向代理服务器以及电子邮件代理服务器,并在一个BSD-like协议下发行。由俄罗斯的程序设计师lgor Sysoev所开发,供俄国大型的入口网站及搜索引擎Rambler使用。其特点是占有内存少,并发能力强,事实上nginx的并发能力确实在同类型的网页服务器中表现较好。 ​ Nginx相较于Apache\lighttpd具

半度微凉 237
上一篇: mysql多端口实现多个实例以及mysqld_multi管理
下一篇: 记录博客升级nginx和php7,以及优化处理
ycdyx
博客等级 码龄16年 19粉丝 91原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值