CentOS 5.8 linux下搭建LEMP平台

来源:互联网 发布:java项目有意思的案例 编辑:程序博客网 时间:2024/04/27 06:52
L:linux
E:nginx
M:mysql
P:php

步骤一、配置好网络环境并且安装依赖包 
pcre-devel zlib-devel 这是两个依赖包    (用以安装niginx的依赖包)                          


步骤二、创建一个专有帐号niginx 默认是用nobody的身份运行的 
 useradd -M -s /sbin/nologin nginx     

三、解压niginx 配置 编译 安装 
解压: tar    -zxvf 命令 -C 指定解压目录   

配置编译安装:]# ./configure --prefix=/usr/local/nginx --user=nginx --group=nginx --with-http_stub_status_module
make
make install 

四:做一个脚本 用于启动或者停止服务  
不做也可以 不做的话 nginx启动 kill -s QUIT 22378 停止 也可以的
脚本内容如下:
( 脚本考过去不好用的话请自行修改下标点什么的 测试是没问题)

#!/bin/bash

chkconfig: - 99 20

# description:ddddddd

case "$1" in

  start)

    /usr/local/nginx/sbin/nginx

    ;;

  stop)

    kill -s QUIT $(cat /usr/local/nginx/logs/nginx.pid)

    ;;

*)

esac


exit 0


做完以后把他拷贝为/etc/init.d/nginx

然后赋予权限 chmod +x /etc/init.d/nginx

最后添加为系统服务 chkconfig --add nginx 
就可以运行了

五、安装mysql数据库 

1)首先获得mysql数据库 解压配置编译安装 

配置编译安装:

[root@www mysql-5.1.55]# ./configure  --prefix=/usr/local/mysql    \

--with-charset=utf8  --with-collation=utf8_general_ci  \

--with-extra-charsets=gbk,gb2312

[root@www mysql-5.1.55]# make

[root@www mysql-5.1.55]# make install


创建一个mysql的用户
useradd -M -u 49 -s /sbin/nologin mysql        创建一个用户叫mysql用于登录数据库 

2)建立mysql配置文件并且初始化数据库

[root@www mysql-5.1.55]# cp support-files/my-medium.cnf /etc/my.cnf

[root@www mysql-5.1.55]# cd /usr/local/mysql/bin/

[root@www bin]# ./mysql_install_db --user=mysql

Installing MySQL system tables...

3)优化下执行路径以便以后的使用

[root@www bin]# chown -R root:mysql /usr/local/mysql/

[root@www bin]# chown -R mysql /usr/local/mysql/var/

[root@www bin]# ln -s /usr/local/mysql/bin/*  /usr/local/bin/

[root@www bin]# ln -s /usr/local/mysql/lib/mysql/*  /usr/lib/

[root@www bin]# ln -s /usr/local/mysql/include/mysql/*  /usr/include/


4)将mysql添加成为系统服务以便日后使用

root@www bin]# cd /usr/src/mysql-5.1.55/

[root@www mysql-5.1.55]# cp support-files/mysql.server /etc/rc.d/init.d/mysqld

[root@www mysql-5.1.55]# chmod a+x /etc/rc.d/init.d/mysqld

[root@www mysql-5.1.55]# chkconfig --add mysqld


5)重启mysql 并且为 root用户设置mysql的登录密码

mysqladmin -u root   password  '123.com' 

6)安装PHP 安装前需要卸载以下软件 如果有的话
 rpm -e php php-cli php-ldap php-common php-mysql --nodeps
安装php首先需要这三个扩展工具  

必须按照以下顺序安装!!!!
1.

root@www ~]# tar zxf libmcrypt-2.5.8.tar.gz -C /usr/src/

[root@www ~]# cd /usr/src/libmcrypt-2.5.8/

[root@www libmcrypt-2.5.8]# ./configure

[root@www libmcrypt-2.5.8]# make && make install

[root@www libmcrypt-2.5.8]# ln  -s  /usr/local/lib/libmcrypt.*   /usr/lib/

2.

[root@www ~]# tar zxf mhash-0.9.9.9.tar.gz -C /usr/src/

[root@www ~]# cd /usr/src/mhash-0.9.9.9/

[root@www mhash-0.9.9.9]# ./configure

[root@www mhash-0.9.9.9]# make && make install

[root@www mhash-0.9.9.9]# ln  -s  /usr/local/lib/libmhash /usr/lib
3.

[root@www ~]# tar zxf mcrypt-2.6.8.tar.gz -C /usr/src/

[root@www ~]# cd /usr/src/mcrypt-2.6.8/

[root@www mcrypt-2.6.8]# ./configure

[root@www mcrypt-2.6.8]# make && make install



7)编译安装PHP
./configure --prefix=/usr/local/php5 --with-mcrypt --with-mysql=/usr/local/mysql --with-config-file-path=/usr/local/php5 --enable-mbstring --enable-fpm

8)1.php.ini配置调整


[root@www ~]# cp /usr/src/php-5.3.6/php.ini-development /usr/local/php5/php.ini

[root@www ~]# grep -v "^;" /usr/local/php5/php.ini  | grep -v "^$"

[PHP]

engine = On

short_open_tag = On

asp_tags = Off


9)修改配置选项
[root@www ~]# vi /usr/local/php5/php.ini 
…… 
default_charset = "utf-8” 
file_uploads = On 
upload_max_filesize = 2M 
max_file_uploads = 20 
post_max_size = 8M 
short_open_tag = On 


10)添加优化模块

root@www ~]# tar zxf ZendGuardLoader-php-5.3-linux-glibc23-i386.tar.gz -C /usr/src/

[root@www ~]# cd /usr/src/ZendGuardLoader-php-5.3-linux-glibc23-i386/php-5.3.x/

[root@www php-5.3.x]# cp ZendGuardLoader.so /usr/local/php5/lib/php/

[root@www php-5.3.x]# vi /usr/local/php5/php.ini

……

[Zend Guard Loader]

zend_extension="/usr/local/php5/lib/php/ZendGuardLoader.so"

zend_loader.enable=1

(PS:1000gg 跳转到1000行)


11)使用PHP的FPM程序

vi /usr/local/php5/etc/php-fpm.conf
……
pid = run/php-fpm.pid                                        
user = nginx                                                  //nginx保持一致
group = nginx                                                    //nginx保持一致
pm.start_servers = 20                            //进程 20
pm.min_spare_servers = 5
pm.max_spare_servers = 35
[root@localhost etc]# /usr/local/php5/sbin/php-fpm              //启动php-fpm服务
[root@localhost etc]# netstat -anpt | grep php-fpm
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 4448/php-fpm.conf)



12)让nginx支持PHP
也要把原来的location下的root和 以下的根目录一样

[root@localhost ~]# vi /usr/local/nginx/conf/nginx.conf

……

 server {

    ……

        location   ~   \.php$ {

            root           /var/www/benet;

            fastcgi_pass   127.0.0.1:9000;

            fastcgi_index  index.php;

            include        fastcgi.conf;

        }

 }……


以下用论坛测试 


1.解压 论坛源码 上传 并且赋予权限 

    tar jxvf SKYUC_3.2.2_Free_For_PHP5.3.tar.bz2 -C /usr/src/   //解压

   
    cd SKYUC_3.2.2_Free_For_PHP5.3/
   
    mv wwwroot/ /var/www/benet/skyuc        /源码上传到根目录
    cd /var/www/benet/skyuc/
   
    chown -R nginx:nginx admincp/ data/ templates/ upload/



0 0
原创粉丝点击