• linux »
  • CentOS6.3 lnmp环境搭建

CentOS6.3 lnmp环境搭建

CentOS6.3 lnmp环境搭建

  • 系统环境: CentOS6.3 32位bit版本
  • 软件环境: Nginx-1.2.7 + MySQL-5.5.27 + PHP-5.4.11

1.安装相关扩展以及编译工具


获取源码包

2.安装PHP (FastCGI模式)

1,编译安装PHP 所需的支持库

2.编译安装MySQL

http://blog.58share.com/?p=141

3.编译安装PHP(FastCGI模式)

4.安装php5扩展模块

5.修改php.ini文件

查找/usr/local/php/etc/php.ini中的extension_dir = “./”
修改为extension_dir = “/usr/local/php/lib/php/extensions/no-debug-non-zts-20060613/”
并在此行后增加以下几行,然后保存:
extension = “memcache.so”
extension = “pdo_mysql.so”
extension = “imagick.so”

再查找output_buffering = Off
修改为output_buffering = On

再查找 ;cgi.fix_pathinfo=0
修改为 cgi.fix_pathinfo=0,防止Nginx文件类型错误解析漏洞。

自动修改:若嫌手工修改麻烦,可执行以下shell命令,自动完成对php.ini文件的修改:

6.配置eAccelerator加速PHP:

跳至尾末加入配置信息

7、创建www用户和组,以及供blog.58share.com和www.58share.com两个虚拟主机使用的目录:

8、创建php-fpm配置文件(php-fpm是为PHP打的一个FastCGI管理补丁,可以平滑变更php.ini配置而无需重启php-cgi):

在/usr/local/php/etc/目录中创建php-fpm.conf文件:

输入以下内容(如果您安装 Nginx + PHP 用于程序调试,请将以下的0改为1,以便显示PHP错误信息,否则,Nginx 会报状态为500的空白错误页):

9、启动php-cgi进程,监听127.0.0.1的9000端口,进程数为128(如果服务器内存小于3GB,可以只开启64个进程),用户为www:

注:/usr/local/php/sbin/php-fpm还有其他参数,包括:start|stop|quit|restart|reload|logrotate,修改php.ini后不重启php-cgi,重新加载配置文件使用reload。

3.安装nginx

1.安装Nginx所需的pcre库

2.安装nginx

3.创建Nginx日志目录

4.创建Nginx配置文件

1、在/usr/local/nginx/conf/目录中创建nginx.conf文件:

输入一下内容

2、在/usr/local/nginx/conf/目录中创建fcgi.conf文件:

输入一下内容

5.启动nginx

四,配置开机自动启动Nginx + PHP

五、优化Linux内核参数

在末尾增加

使配置生效:

六、在不停止Nginx服务的情况下平滑变更Nginx配置

1、修改/usr/local/nginx/conf/nginx.conf配置文件后,请执行以下命令检查配置文件是否正确:

如果屏幕显示以下两行信息,说明配置文件正确:
the configuration file /usr/local/nginx/conf/nginx.conf syntax is ok
the configuration file /usr/local/nginx/conf/nginx.conf was tested successfully

2、平滑重启:
①、对于Nginx 0.8.x版本,现在平滑重启Nginx配置非常简单,执行以下命令即可:

七、编写每天定时切割Nginx日志的脚本(未验证)

1、创建脚本/usr/local/nginx/sbin/cut_nginx_log.sh

 

2、设置crontab,每天凌晨00:00切割nginx访问日志

八、安装memcache缓存服务器

获取源码

编译安装

参考:http://blog.s135.com/nginx_php_v6/

 

## 遇见的新问题

解决libmysqlclient.so.18: cannot open shared object file: no such file or directory failed问题

 

This entry was posted in linux, MySQL, Nginx, php

Leave a Reply

电子邮件地址不会被公开。

您可以使用这些 HTML 标签和属性: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code class="" title="" data-url=""> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre class="" title="" data-url=""> <span class="" title="" data-url="">