`

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

阅读更多

坊间传闻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

至此,全文完

 

0
0
分享到:
评论

相关推荐

    upupw_nginx_php5.6

    8. **日志管理**:Nginx和PHP都有自己的日志系统,分别记录访问日志和错误日志,这对于排查问题和分析网站性能非常有用。 9. **性能优化**:Nginx可以通过缓存、负载均衡、GZIP压缩等方式提高性能。而PHP5.6也有...

    Nginx+常见应用技术指南[Nginx+Tips]+第二版

    Nginx的日志记录可以自定义,便于分析服务器性能、追踪错误和优化策略。 **Nginx Cache** Nginx可以缓存动态内容,减轻后端服务器的压力,提高响应速度。 **Nginx负载均衡** Nginx支持多种负载均衡策略,如轮询...

    轻量级HTTP服务器Nginx

    - **高可用性**:Nginx支持热部署,可以在不停止服务的情况下升级软件或配置,几乎可实现7×24小时不间断运行。 #### 1.3 Nginx的模块与工作原理 Nginx的核心架构由内核和模块组成。内核设计简洁,主要负责接收...

    nginx安装及配置

    Nginx还具备sendfile、sendfile64特性,用于优化文件传输,以及支持异步I/O(AIO)和内存映射(mmap)技术,进一步提升性能。 **Nginx的主要功能** 1. **静态资源服务**:Nginx擅长处理静态文件请求,如HTML、CSS...

    nginx 技术 分析

    这种模型使得Nginx能够高效地处理大量并发连接,降低了CPU和内存资源的占用。 2. **模块化架构** Nginx的核心功能通过模块化设计实现,如HTTP核心模块、静态文件服务模块、反向代理模块等。用户可以根据需求选择和...

    Centos7+nginx1.20.1源码部署包

    本压缩包"Centos7+nginx1.20.1源码部署包"是为在CentOS 7系统上源码编译安装Nginx 1.20.1版本而设计的,它包含了所有必要的依赖项、自动化脚本以及PHP服务配置,便于快速、便捷地部署和管理Nginx环境。 1. **源码...

    nginx-1.23.0nginx-1.23.0nginx-1.23.0

    9. **高可用性和热更新**:Nginx支持主备模式和热更新,可以在不中断服务的情况下升级软件版本。 10. **日志记录**:Nginx提供详细的访问日志,方便分析服务器性能和用户行为。 在安装和配置Nginx 1.23.0时,通常...

    nginx-1.0.2

    7. **模块化设计**:Nginx支持丰富的第三方模块扩展,如模块化的日志处理、限速、防DDoS攻击等功能,可以根据需求进行配置和扩展。 在"nginx-1.0.2"这个版本中,可能包含以下特性: - 支持HTTP/1.1协议。 - 提供了...

    Nginx高性能WEB服务器系列(超级详细)

    Nginx 日志记录了服务器的所有访问记录,对其进行分析可以帮助优化性能和解决安全问题。 - **日志格式**:通过 `access_log` 指令配置日志格式。 - **日志分析工具**:使用如 AWK、Sed、Logstash 等工具进行日志...

    nginx for windows 工具下载

    3. **静态资源处理**:Nginx擅长处理静态文件如HTML、图片、CSS和JavaScript,效率远高于PHP或Apache等动态语言解析器。 4. **负载均衡**:通过配置,Nginx可以实现轮询、权重、IP哈希等多种负载均衡策略,将请求...

    Nginx初中级操作手册

    Nginx 采用了事件驱动的异步非阻塞模型,能够处理大量并发连接,且具有热部署能力,允许在不中断服务的情况下进行升级和配置调整。 二、Nginx 安装及调试 安装 Nginx 通常需要先安装依赖库,如 PCRE(Perl ...

    Nginx应用文档.docx

    Nginx 主要用于处理静态文件请求,执行重定向,以及作为反向代理服务器转发请求到后端应用服务器,如 Apache 或 PHP-FPM。同时,Nginx 支持 SSL/TLS 加密,可以作为邮件代理服务器,并且可以部署在分布式系统中,...

    一键lnmp(mysql分离)(nginx 1.13+mysql5.5+php5.3)-详细笔记文档总结-带安装包

    配置过程中的每一步都需要记录,包括错误排查和优化策略。这些笔记文档应包含安装步骤、配置文件示例、遇到的问题及解决方案,以便于后期的维护和升级。同时,提供安装包意味着已经包含了所有必需的软件和预配置...

    Nginx+常见应用技术指南[Nginx+Tips]+第二版.pdf

    - **日志处理**:Nginx的日志记录功能便于分析和监控服务器状态。 - **Cache**:Nginx可以缓存静态内容,减少对后端服务器的压力。 - **LEMP环境**:Nginx与Linux、MySQL和PHP/Perl/Python的组合,构建高性能的Web...

    nginx1.16-win-Legacy versions.zip

    Nginx 是一款高性能的 Web 服务器和反向代理服务器,以其轻量级、稳定性和高并发处理能力而闻名。`nginx1.16-win-Legacy versions.zip` 是官方发布的针对 Windows 平台的 Nginx 1.16 版本的归档文件,主要用于在 ...

    Nginx中文手册下载

    ### Nginx中文手册知识点概览 #### 一、Nginx基础知识 1. **简介** - Nginx是一款高性能的HTTP服务器和反向代理服务器,同时也是IMAP/POP3/SMTP代理服务器。 - 由Igor Sysoev为俄罗斯访问量第二大的网站Rambler....

    PHP高级工程师必知必会Nginx+keepalived+MongoDB+haproxy+Sphinx实现分布式集群部署实战视频

    - **高性能**:Nginx优秀的并发处理能力和haproxy强大的负载均衡机制共同确保了良好的用户体验;Sphinx出色的索引建立与搜索速度也极大提升了信息检索效率。 - **易维护性**:所有组件均采用开源技术栈,方便后期...

Global site tag (gtag.js) - Google Analytics