首先下载nginx,nginx下载地址:http://www.nginx.org/download/nginx-0.8.53.tar.gz
[root@winsyk ~]# mkdir -p /usr/src/nginx
[root@winsyk ~]# cd /usr/src/nginx
[root@winsyk ~]# wget -c http://www.nginx.org/download/nginx-0.8.53.tar.gz   #下载nginx
[root@winsyk ~]# tar -zxvf nginx-0.8.53.tar.gz
[root@winsyk ~]# cd nginx-0.8.53
[root@winsyk ~]# useradd www   #添加www nginx运行账户
[root@winsyk ~]# usemod -s /sbin/nologin -g www www #将www加入www组并禁止www登录shell
编译前编辑src/core/nginx.h找到
#define nginx_version
#define NGINX_VERSION 
#define NGINX_VER
#define NGINX_VAR

将上边信息替换为你想替换的信息,便于隐藏nginx版本。
编辑src/http/ngx_http_special_response.c找到
static u_char ngx_http_error_full_tail[] =
static u_char ngx_http_error_tail[] =

替换出错信息为你想隐藏的版本。
[root@winsyk ~]# ./configure --prefix=/usr/local/nginx --user=www --group=www --with-http_stub_status_module --without-http_rewrite_module --with-http_ssl_module --with-pcre && make && make install     
注:运行编译,加入了--with-pcre参数便于nginx配置支持pcre正则库,编译完成,运行
[root@winsyk ~]# /usr/local/nginx/sbin/nginx -c /usr/local/nginx/conf/nginx.conf #启动nginx,nginx启动成功。

二、安装php

然后下载php,php下载地址为:http://cn.php.net/get/php-5.3.3.tar.bz2/from/this/mirror
[root@winsyk ~]# mkdir -p /usr/src/nginx/php
[root@winsyk ~]# wget -c http://cn.php.net/get/php-5.3.3.tar.bz2/from/this/mirror
[root@winsyk ~]# tar -jxvf php-5.3.3.tar.bz2 #解压文件
[root@winsyk ~]# yum -y install libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel mysql pcre-devel   #为了方面不编译这些文件,直接yum安装
[root@winsyk ~]# ./configure --prefix=/usr/local/php --with-mysql --enable-fpm --with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir --enable-xml --disable-debug --enable-safe-mode --enable-mbstring && make && make install

#编译php,--enable-fpm支持fpm/fastcgi编译需要一段时间(根据机器的性能来说)

[root@winsyk ~]# cp -R ./sapi/fpm/php-fpm.conf /usr/local/php/etc/php-fpm.conf

#复制php-fpm文件到php安装目录
[root@winsyk ~]# cp -R ./sapi/fpm/php-fpm /etc/init.d/php-fpm #php-fpm启动
[root@winsyk ~]# /etc/init.d/php-fpm

运行启动后,出现Nov 20 17:54:03.891754 [ALERT] [pool www]pm.min_spare_servers(0) must be a positive value 启动错误。
编辑php-fpm.conf找到pm.min_spare_server ;pm.min_spare_servers = 5 去除;号
也可使用sed -i 's/;pm.min_spare_servers/pm.min_spare_servers/g' /usr/local/php/etc/php-fpm.conf 进行替换
再次运行php-fpm进行启动,提示错误:
Nov 20 17:57:14.210553 [ALERT] [pool www] pm.max_spare_servers(0) must be a positive value
sed -i 's/;pm.max_spare_servers = 35/pm.max_spare_servers = 35/g' /usr/local/php/etc/php-fpm.conf
再次运行php-fpm启动,提示错误:
Nov 20 17:58:55.248268 [WARNING] [pool www] pm.start_servers is not set. It's been set to 20
sed -i 's/;pm.start_servers = 20/pm.start_servers = 20/g' /usr/local/php/etc/php-fpm.conf
再次运行php-fpm未提示错误,启动成功。

#配置php
编译nginx.conf加入如下语句:
       location ~ \.php$ {
        root html;   
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        include fastcgi_params;
        fastcgi_param SCRIPT_FILENAME   /usr/local/nginx/html$fastcgi_script_name;
        }
echo "<?php phpinfo();?>" >/usr/local/nginx/html/index.php
然后运行index.php测试安装成功。

nginx php-fpm安装手记的更多相关文章

  1. SQL Server 2016 CTP2.2 安装手记

    SQL Server 2016 CTP2.2 安装手记 下载一个iso文件,解压出来(大约2.8G左右),在该路径下双击Setup.exe即可开始安装. 安装之前请先安装.NET 3.5 SP1,在服 ...

  2. 记录一次自己对nginx+fastcgi(fpm)+mysql压力测试结果

    nginx + fastcgi(fpm) 压力测试: CentOS release 5.9 16核12G内存 静态页面: 并发1000,压测200秒,测试结果: 系统最大负载5.47 成功响应: 25 ...

  3. Nginx 的编译安装和URL地址重写

    本文转自:http://www.178linux.com/14119#rd?sukey=ecafc0a7cc4a741b573a095a3eb78af6b4c9116b74d0bbc9844d8fc5 ...

  4. Nginx源码安装及调优配置

    导读 由于Nginx本身的一些优点,轻量,开源,易用,越来越多的公司使用nginx作为自己公司的web应用服务器,本文详细介绍nginx源码安装的同时并对nginx进行优化配置. Nginx编译前的优 ...

  5. Linux 下的php,nginx,mysql的安装

    yum -y install wget make vim install gcc gcc-c++ ncurses ncurses-devel autoconf libjpeg libjpeg-deve ...

  6. Nginx 介绍和安装

    Nginx ("engine x") 是一个高性能的 HTTP 和 反向代理 服务器,也是一个 IMAP/POP3/SMTP 代理服务器. Nginx 是由 Igor Sysoev ...

  7. Nginx与Tomcat安装、配置与优化

    Nginx与Tomcat安装.配置与优化 Nginx与Tomcat安装.配置与优化 Nginx的安装与使用 Nginx是一款优秀的反向代理服务器 安装: rpm(或者是pkg安装),是预编译好的程序包 ...

  8. Nginx简介与安装

    | 简介 Nginx是一个高性能的HTTP和反向代理服务器,可以作为负载均衡服务器,也是一个IMAP/POP3/SMTP服务器.它的特点是占有内存少,并发能力强.目前有很多大型公司都在使用Nginx, ...

  9. nginx的yum安装,基本参数使用,编译参数说明和Nginx基本配置,模块安装

    nginx的yum安装从nginx官网获取源 vim /etc/yum.repose.d/nginx.repo[nginx]name=nginx repobaseurl=http://nginx.or ...

  10. nginx非root安装

    nginx非root安装 唯一需要解决的就是指定安装目录 这里使用nginx相关包如下 nginx-1.14.0.tar.gz 安装需要依赖如下2个包 pcre-8.42.tar.gz zlib-1. ...

随机推荐

  1. Solr6.6 IK 中文分词的配置和使用

    1. 首先,下载IKAnalyzer ,下载 2. 将ik的相关文件 拷贝到 webapps\solr\WEB-INF\lib 目录下 或者存放solr-6.6.0\server\solr\test\ ...

  2. Maven Web项目配置Mybatis出现SqlSessionFactory错误的解决方案

    一.错误现象 严重: Context initialization failed org.springframework.beans.factory.BeanCreationException: Er ...

  3. spring的条件装配bean

    1 应用程序环境的迁移 问题: 开发软件时,有一个很大的挑战,就是将应用程序从一个环境迁移到另一个环境. 例如,开发环境中很多方式的处理并不适合生产环境,迁移后需要修改,这个过程可能会莫名的出现很多b ...

  4. hive的rownumber()的使用

    举个简单的栗子: 找到最小日期的那一条记录 select * from ( select *,row_number() over (partition by id order by cast(date ...

  5. RocketMQ通信协议

    我们先从client端看一个消息是如何发送到服务端,服务端又是如何解析消息的. client端: 构造请求体: 构造请求体: 发送消息体: 下面看服务端: rocketmq的协议服务端解析救灾这里了R ...

  6. php.in

    [PHP] ;;;;;;;;;;; ; WARNING ; ;;;;;;;;;;; ; This is the default settings file for new PHP installati ...

  7. C#秘密武器之多线程——基础

    多线程概述 什么是进程? 当一个程序开始运行时,它就是一个进程,进程包括运行中的程序和程序所使用到的内存和系统资源.而一个进程又是由多个线程所组成的. 什么是线程? 线程是程序中的一个执行流,每个线程 ...

  8. Android Training - Volley(Lesson 0 - 序言)

    写在http://hukai.me/blog/android-training-volley-index/

  9. 南阳OJ 背包问题

     /*背包问题 时间限制:3000 ms  |  内存限制:65535 KB 难度:3 描写叙述 如今有非常多物品(它们是能够切割的),我们知道它们每一个物品的单位重量的价值v和 重量w(1< ...

  10. MVC项目发布到IIS遇到的问题

    MVC4 + .NET Framework 4.5 +Windows Server 2008+ IIS7.5 + 4.0集成模式池 ,发布后可能会遇到404.0 或者403.14错误,在web.con ...