LNMP架構

 

1)使用web前端服務和後端存儲服務進行串聯.php

2)主要實現處理PHP程序動態請求html

①.LNMP工做原理:Linux+Nginx+Mysql+PHP 前端

L Linuxmysql

N nginxlinux

M mysqlnginx

P php web

使用yum安裝PHP環境的教程:sql

https://www.jianshu.com/p/f5d2f1a8ab90數據庫

部署搭建LNMP架構;(參考lnmp.org,網站一鍵安裝腳本部署該環境)apache

LNMP架構部署:

①.安裝相關軟件,

  安裝Linux系統 (基礎優化,防火牆,selinux關閉)

  安裝nginx服務 (配置相應的模塊)yum或者源碼編譯安裝

  安裝php-fpm環境

      安裝mysql數據庫服務

 

② 安裝好基礎環境以後,創建php-fpm和nginx的關聯,修改nginx的配置文件nginx.conf

 

③創建php-fpm和mysql數據庫的關聯性,讓程序支持mysql數據後臺

 

④總體測試搭建的網站得可用性.

 

1.首先解決PHP軟件的依賴關係 

yum install -y zlib-devel libxml2-devel libjpeg-devel libjpeg-turbo-devel libiconv-devel freetype-devel libpng-devel gd-devel libcurl-devel libxslt-devel

libiconv軟件安裝---字符集轉換庫(默承認以不進行安裝了)
cd /server/tools
#wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.14.tar.gz
tar zxf libiconv-1.14.tar.gz
cd libiconv-1.14
./configure --prefix=/usr/local/libiconv
make
make install
cd ../

還須要安裝一些依賴的組件.

yum -y install libmcrypt-devel mhash mcrypt
rpm -qa libmcrypt-devel mhash mcrypt

 

2.接下來下載PHP軟件:(php官網: php.net)

解壓下載下來的軟件包:

[root@web01 tools]# tar xf php-5.5.32.tar.gz

安裝配置:

cd php-5.5.32

./configure \

--prefix=/app/php-5.5.32 \

--with-mysql=/app/mysql \

--with-pdo-mysql=mysqlnd \

--with-iconv-dir=/usr/local/libiconv \

--with-freetype-dir \

--with-jpeg-dir \

--with-png-dir \

--with-zlib \

--with-libxml-dir=/usr --enable-xml \

--disable-rpath \

--enable-bcmath \

--enable-shmop \

--enable-sysvsem \

--enable-inline-optimization \

--with-curl \

--enable-mbregex \

--enable-fpm \

--enable-mbstring \

--with-mcrypt \

--with-gd \

--enable-gd-native-ttf \

--with-openssl \

--with-mhash \

--enable-pcntl \

--enable-sockets \

--with-xmlrpc \

--enable-soap \

--enable-short-tags \

--enable-static \

--with-xsl \

--with-fpm-user=www \

--with-fpm-group=www \

--enable-ftp \

--enable-apache=no

##防錯(如下信息能夠不進行配置了)
ln -s /application/mysql/lib/libmysqlclient.so.18 /usr/lib64/
touch ext/phar/phar.phar
make
make install
ln -s /application/php-5.5.32/ /application/php

 

3.設置php程序配置文件:

php.ini    php-fpm.ini

cp php.ini-production /app/php-5.5.32/lib/

ln -s /app/php-5.5.32/  /app/php

cd /app/php/etc/ 

cp php-fpm.conf.default php-fpm.conf

 

4.安裝Mysql數據庫服務(yum, 源碼安裝,二進制包方式安裝)

下載mysql的地址:ftp://ftp.jaist.ac.jp/pub/mysql/

解壓:tar xf mysql-5.6.34-linux-glibc2.5-x86_64.tar.gz 

將mysql目錄移動到部署目錄: mv mysql-5.6.34-linux-glibc2.5-x86_64 /app/mysql-5.6.34

設置軟連接: ln -s /app/mysql-5.6.34/ /app/mysql

接下來,建立數據庫的管理用戶和密碼帳號,並受權數據目錄由mysql用戶管理.

useradd mysql -M -s /sbin/nologin 

chown -R mysql.mysql /app/mysql/data/

對數據庫服務進行初始化:

./scripts/mysql_install_db --basedir=/app/mysql --datadir=/app/mysql/data/ --user=mysql

啓動腳本中的basedir目錄路徑須要修改:

sed -ir 's#/usr/local#/app#g' /app/mysql/bin/mysqld_safe  /etc/init.d/mysqld

[root@db01 support-files]# sed -ir 's#/usr/local#/app#g' /app/mysql/support-files/mysql.server

ln -s  /app/mysql/support-files/mysql.server /etc/init.d/mysqld 

用安裝的mysql的配置文件替換系統的mysql配置文件.mysql 數據庫的默認配置文件/etc/my.cnf . 

cp ./support-files/my-default.cnf /etc/my.cnf   

(啓動mysql服務)

[root@web01 tools]# /etc/init.d/mysqld start
Starting MySQL.... SUCCESS!

 

設置數據庫mysql的root用戶密碼:

[root@web01 tools]# /app/mysql/bin/mysqladmin -uroot password "123456"
Warning: Using a password on the command line interface can be insecure.

使用數據庫帳號和密碼登陸數據庫.

/app/mysql/bin/mysql -uroot -p123456 

簡單查看數據庫的命令:

mysql> show databases;

 

5.設置好php相關配置文件和開啓mysql服務以後,下面啓動php程序服務

[root@web01 tools]# /app/php/sbin/php-fpm

[root@web01 tools]# netstat -ltnup |grep php-fpm
tcp 0 0 127.0.0.1:9000 0.0.0.0:* LISTEN 61793/php-fpm

 

6,將php-fpm程序和web服務器nginx(或apache)結合起來,而後將php-fpm程序與mysql服務結合起來,才能跑php程序開發的網站程序  

 如今要將nginx與php程序相結合.

編寫nginx的配置文件,添加以下代碼在nginx的配置文件中.

location ~* .*\.(php|php5)?$ {
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}

讓php與mysql創建鏈接,設置的方法:

php與mysql結合:編寫php程序代碼

vim test_mysql.php (放在站點目錄下面/html/www)
<?php
//$link_id=mysql_connect('主機名','用戶','密碼');
//mysql -u用戶 -p密碼 -h 主機
$link_id=mysql_connect('localhost','root','123456') or mysql_error();
if($link_id){
echo "mysql successful by oldboy !\n";
}else{
echo mysql_error();
}
?>

 測試:

在本地windows主機修改hosts文件 blog.abc.com 10.0.0.7 

而後打開http://blog.abc.com/test_info.php

下面接下來會介紹如何經過搭建的lnmp環境搭建一個wordpress網站而後進行測試.

相關文章
相關標籤/搜索