trzxycx 发表于 2018-11-16 10:56:59

实践CentOS+Nginx+PHP

  前言
  我是在vm里装的centos5,因为只配置了局域网内互通,不对外联网,所以不能使用yum,都是使用tar和rpm包安装。操作的目的是为了测一下apache和nginx的性能差异。另外测试一下nginx做反向代理的效果。下面是安装的具体流程,不算是教程,是我操作的一个记录吧,当然,里面肯定有错误的地方,欢迎大家指正。
  系统版本:
  
Linux B2 2.6.18-194.el5 #1 SMP Fri Apr 2 14:58:35 EDT 2010 i686 athlon i386 GNU/Linux
  

  
使用到的软件:
  
pcre-8.10.tar
  
nginx-0.7.67.tar
  
mysql-5.5.3-m3.tar
  
php-5.2.14-fpm-0.5.14.diff
  
php-5.2.14.tar
  一, 安装Nginx所需要的pcre库
  

  
将文件上传到/tmp目录下,然后进入/tmp目录,解压并执行:
  


[*]cd /tmp
[*]tar -zxvf pcre-8.10.tar.gz
[*]cd pcre-8.10
[*]./configure
  
但是提示需要C C++编译器的支持,通过光盘,使用RPM包安装GCC,
  

  


[*]rpm -ivh cpp-4.1.2-48.el5.i386.rpm
[*]rpm -ivh libgomp-4.4.0-6.el5.i386.rpm
[*]rpm -ivh gcc-4.1.2-48.el5.i386.rpm
[*]rpm -ivh libstdc++-devel-4.1.2-48.el5.i386.rpm
[*]rpm -ivh gcc-c++-4.1.2-48.el5.i386.rpm
  

  重新安装pcre
  

  


[*]cd /tmp/pcre-8.10
[*]./configure
[*]make
[*]mak install
  

  至此pcre安装完成,下面开始安装nginx
  二,安装Nginx
  
将文件上传到/tmp目录,解压并执行
  


[*]cd /tmp
[*]tar -zxvf nginx-0.7.67.tar.gz
[*]cd nginx-0.7.67
[*]./configure
[*]--user=www
[*]--group=www
[*]--prefix=/usr/local/lnmp/nginx
[*]make && make install
  
在这里,指定了Nginx的用户,用户组和安装目录。因为www的用户和用户组系统内还没有,
  
所以,要创建这个用户组和用户,并把/usr/local/lnmp的属主和组指定为www
  


[*]groupadd www
[*]useradd www -g www -d /usr/local/lnmp -s /sbin/nologin
[*]chown -R www:www /usr/local/lnmp
  

  然后,通过vi打开Nginx的配置文件/usr/local/lnmp/nginx/conf/nginx.conf,修改用户和用户组。(因为这里主要是做安装,Nginx的具体配置将另文说明)将文件里最前面的usr项,由原来的nobody改为www www
  -----------------------------------------------------------------------
  ----------------------------------------------------------------------
  这样,Nginx安装就完成了,下面是启动并查看进程
  


[*]/usr/local/lnmp/nginx/sbin/nginx
[*]ps -aux | grep nginx
  

  查看进程
  ---------------------------------------------------------------------
  ---------------------------------------------------------------------
  打开浏览器查看
  
----------------------------------------------------------------
  -------------------------------------------------------------
  将Nginx设为开机自动启动
  


[*]echo "/usr/local/nginx/sbin/nginx" >> /etc/rc.local
  

  三,安装MySQL
  
  
因为这台服务器只做web,数据库使用其它服务器,所以此处只安装供PHP连接,不配置mysql。
  

  


[*]cd /tmp
[*]tar -zxvf mysql-5.5.3-m3.tar.gz
[*]cd mysql-5.5.3-m3
[*]./configure --prefix=/usr/local/lnmp/mysql
[*]make && make install
[*]chown -R www:www /usr/local/lnmp/mysql
  

  四, 安装PHP扩展
  

  安装PHP之前,安装一些常用的扩展,因为主要是做测试,其它的扩展待将来需要再通过phpize添加。这里的操作和前面安装rpm包过程差不多,不再列出详细流程命令,只写出安装命令:
  

  


[*]rpm -ivh libpng-1.2.10-7.1.el5_3.2.i386.rpm
[*]rpm -ivh libpng-devel-1.2.10-7.1.el5_3.2.i386.rpm
[*]rpm -ivh libjpeg-6b-37.i386.rpm
[*]rpm -ivh libjpeg-devel-6b-37.i386.rpm
[*]rpm -ivh freetype-2.2.1-21.el5_3.i386.rpm
[*]rpm -ivh freetype-devel-2.2.1-21.el5_3.i386.rpm
[*]rpm -ivh fontconfig-2.4.1-7.el5.i386.rpm
[*]rpm -ivh fontconfig-devel-2.4.1-7.el5.i386.rpm
[*]rpm -ivh gd-2.0.33-9.4.el5_4.2.i386.rpm
  

  
五,安装PHP和php-fpm
  先解压PHP,然后把php-fpm压到PHP的包内,再安装
  


[*]cd /tmptar –zxvf php-5.2.14.tar.gz
[*]gzip -cd php-5.2.14-fpm-0.5.14.diff.gz | patch -d php-5.2.14 -p1
[*]cd php-5.2.14
[*]./configure
[*]--prefix=/usr/local/lnmp/php
[*]--with-config-file-path=/usr/local/lnmp/php/etc
[*]--with-gd-dir
[*]--with-jpeg-dir
[*]--with-png-dir
[*]--with-freetype-dir
[*]--with-mysql=/usr/local/lnmp/mysql
[*]--enable-fastcgi
[*]--enable-fpm
[*]make && make install
  
拷贝php.ini文件,修改权限
  

  


[*]cp php.ini-dist /usr/local/lnmp/php/etc/php.ini
[*]chown -R www:www /usr/local/lnmn/php
  
修改etc/php-fpm.conf文件中的属主
  


[*]vi /usr/local/lnmp/php/etc/php-fpm.conf
  
将文件中的nobody改为www,并去掉注释
  修改前:-------------------------------------------------------------
  


  修改后:-------------------------------------------------------------

  -------------------------------------------------------------
  启动并保存启动,查看进程
  


[*]echo /usr/local/lnmp/php/sbin/php-fpm start >> /etc/rc.local
[*]/usr/local/lnmp/php/sbin/php-fpm start
[*]ps -aux | grep php
  

  -------------------------------------------------------------

  -------------------------------------------------------------
  六, 整合Nginx和PHP
  

  
打开Nginx的配置文件,找到下图位置
  

  


[*]vi /usr/local/lnmp/nginx/conf/nginx.conf
  

  修改前:-------------------------------------------------------------

  修改后:-------------------------------------------------------------
  



  -------------------------------------------------------------
  七,测试
  

  在Nginx的网站目录中创建一个PHP测试文件test.php,内容为phpinfo()
  


  


[*]vi /usr/local/lnmp/nginx/html/test.php
  

  重启fpm和Nginx
  


[*]/usr/local/lnmp/php/sbin/php-fpm stop
[*]/usr/local/lnmp/php/sbin/php-fpm start
[*]ps -aux | grep nginx
[*]kill 8937
[*]/usr/local/lnmp/nginx/sbin/nginx
  

  打开浏览器,查看

  
结尾
  在操作过程中,严重参考了以下两篇博文,在此列出,以示感谢
  
http://blog.s135.com/nginx_php_v6
  
http://www.anqn.com/os/linux/2010-01-09/a09123156.shtml



页: [1]
查看完整版本: 实践CentOS+Nginx+PHP