LNMP環境搭建

Linux搭建LNMP環境

一、安裝nginx並測試正常訪問網站php

 

二、安裝mysqlhtml

1)確認rpm mysql刪除

# rpm -qa | grep mysql

2)解壓縮Mysql並配置安裝參數

# ./configure --prefix=/usr/local/mysql --with-charset=utf8 --with-collation=utf8_general_ci --with-extra-charsets=gbk,gb2312

3)編譯並安裝

# make && make install

4)生成mysql配置文件及啓動服務

# cp support-files/my-medium.cnf /etc/my.cnf

# cp support-files/mysql.server /etc/init.d/mysqld

# chmod a+x /etc/init.d/mysqld

# chkconfig --add mysqld

# chkconfig --list mysqld

5)初始化mysql數據庫

# useradd -M -s /sbin/nologin mysql

# /usr/local/mysql/bin/mysql_install_db --user=mysql

# chown -R root:mysql /usr/local/mysql/

# chown -R mysql /usr/local/mysql/var/

6)創建mysql相應軟連接

# ln -s /usr/local/mysql/bin/* /usr/local/bin/

# ln -s /usr/local/mysql/lib/mysql/* /usr/lib

# ln -s /usr/local/mysql/include/mysql/* /usr/include/

7)啓動mysqld服務,並驗證

# /etc/init.d/mysqld start

Starting MySQL.                                            [肯定]

# netstat -antp | grep mysqld

tcp        0      0 0.0.0.0:3306   0.0.0.0:*     LISTEN      21727/mysqld

8)爲mysql用戶添加密碼

# mysqladmin -u root -p password "www.1.com"
View Code

三、安裝phpmysql

1)確認rpm php軟件卸載

# rpm -qa | grep php

2)解壓縮並配置安裝參數

# ./configure --prefix=/usr/local/php --with-gd --with-zlib --with-mysql=/usr/local/mysql --with-config-file-path=/usr/local/php --enable-mbstring --enable-fpm

錯誤1:

configure: error: xml2-config not found. Please check your libxml2 installation.

解決辦法:

yum install libxlm2-devel

錯誤2:

configure: error: libpng.(a|so) not found.

解決辦法:

yum install -y libpng-devel

3)編譯並安裝

#make && make install

4)生成php.ini配置文件並建立相應的軟連接

# cp php.ini-development /usr/local/php/php.ini

# ln -s /usr/local/php/bin/* /usr/local/bin/

# ln -s /usr/local/php/sbin/* /usr/local/sbin/

5)配置php使其支持ZendGuardLoader

# cp ZendGuardLoader.so /usr/local/php/lib/php/

# vim /usr/local/php/php.ini

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

zend_loader.enable=1
View Code

四、配置nginx使其支持php

nginx支持php有兩種方式:其一,充當中介,將訪問php頁面的請求轉交到其餘的LAMP服務器進行解析;其二,經過使用php的fpm模塊調用本機的php環境nginx

這裏採用第二種方式sql

1)生成php-fpm.conf配置文件,並啓用php-fpm進程數據庫

# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

# vim /usr/local/php/etc/php-fpm.conf

pid = run/php-fpm.pid    //確認pid文件位置

user = nginx

group = nginx

pm.start_servers = 20                    //啓動時開啓的進程數

pm.min_spare_servers = 5            //最少空閒進程數

pm.max_spare_servers = 35         //最多空閒進程數

# /usr/local/sbin/php-fpm

# netstat -antp | grep php-fpm

tcp        0      0 127.0.0.1:9000   0.0.0.0:* LISTEN      25063/php-fpm    

2)修改nginx服務啓動腳本,使php-fpm隨nginx自動啓動關閉;在原有腳本基礎上添加藍色字體內容vim

# vim /etc/init.d/nginx服務器

PROG_FPM="/usr/local/sbin/php-fpm"

PIDF_FPM="/usr/local/php/var/run/php-fpm.pid"

 

start)

    $PROG

    $PROG_FPM

    ;;

  stop)

    kill -s QUIT $(cat $PIDF)

    kill -s QUIT $(cat $PIDF_FPM)

    ;;

3)驗證nginx和php-fpm共同啓動tcp

# /etc/init.d/nginx start

# netstat -atnp | grep :9000

tcp        0      0 127.0.0.1:9000  0.0.0.0:*   LISTEN      25152/php-fpm      

# netstat -atnp | grep :80

tcp        0      0 0.0.0.0:80 0.0.0.0:*         LISTEN      25149/nginx    

4)修改nginx配置文件,使其支持phpide

# vim /usr/local/nginx/conf/nginx.conf

location ~ \.php$ {

   root           /usr/local/nginx/html/;  //指定php頁面根目錄

   fastcgi_pass   127.0.0.1:9000;     //指定php-fpm的端口

   fastcgi_index  index.php;      //指定Php首頁名稱

   include       fastcgi.conf;   

}

5)在/usr/local/nginx/html下建立test.php文件測試LNMP是否正常工做

# vim /usr/local/nginx/html/test.php

<?php

$link=mysql_connect('localhost','root','www.1.com');

if($link) echo "鏈接成功";

mysql_close();

?>

6)重啓nginx服務,並測試

www.bj.com/test.php

相關文章
相關標籤/搜索