部署LNMP除了需要nginx,還需要mariadb 客戶端工具 mariadb-server mariadb-devel php php-mysql(mysql爲php一個模塊) php-fpm(把php當服務啓動,能佔用9000端口,這個包不再yum源裏,在lnmp-soft裏)
LNMP (linux系統,nginx網站,php解釋器(一種編程語言) mariadb,mariadb-devel 存數據的服務器(不裝無法啓服務)mariadb-devel相關依賴包。
1,yum -y install mariadb-server mariadb mariadb-devel php php-mysql
2.測試安裝的php解釋器是否安裝成功進入/usr/local/nginx/html網頁裏寫個php代碼測試下vim test.php(每句話後面加;用於後面動靜分離做測試)
<?php
$i=33;
echo $i;
?>
[root@proxy html]# php test.php
33
3,啓動mysql(mariadb)
[root@proxy ~]# systemctl start mariadb //啓動服務器
[root@proxy ~]# systemctl status mariadb //查看服務狀態
[root@proxy ~]# systemctl enable mariadb //設置開機啓動
ss -antulp mysql 查看端口確認服務是否啓動
4,啓動PHP-FPM服務
[root@proxy ~]# systemctl start php-fpm //啓動服務
[root@proxy ~]# systemctl status php-fpm //查看服務狀態
[root@proxy ~]# systemctl enable php-fpm //設置開機啓動
關閉防火牆,selinux(setenf--)
構建成一個平臺 構建LNMP平臺(動靜分離)
查看php-fpm配置文件,過濾後查看
grep -v "^;" /etc/php-fpm.d/www.conf | grep -v "^$" | wc -l
查看後只有二十行了
root@proxy etc]# vim /etc/php-fpm.d/www.conf
[www]
listen = 127.0.0.1:9000 //PHP端口號
pm.max_children = 32 //最大進程數量
pm.start_servers = 15 //最小進程數量
pm.min_spare_servers = 5 //最少需要幾個空閒着的進程
pm.max_spare_servers = 32 //最多允許幾個進程處於空閒狀態
1,修改nginx的配置文件 /usr/local/nginx/conf/nginx.conf
下拉72行找到動態網站配置位置,去掉“location ~ \.php$ { ” 開頭往下的註釋,並把最長的那一行刪除,最後一樣params改爲.conf。如下
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#}
************************如下
location ~ \.php$ {
root html;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
include fastcgi.conf;
}
*************************************
2,然後重新加載一下,沒有提示表示正確。有提示表示你沒有啓動nginx(先啓動後加載)
/usr/local/nginx/sbin/nginx -s reload
動靜分離完成
3,創建PHP頁面,測試LNMP架構能否解析PHP頁面
[root@proxy ~]# vim /usr/local/nginx/html/test1.php
1)創建PHP測試頁面1,可以參考lnmp_soft/php_scripts/test.php:
<?php
$i="This is a test Page";
echo $i;
?>
2)創建PHP測試頁面,連接並查詢MariaDB數據庫。
可以參考lnmp_soft/php_scripts/mysql.php:
[root@proxy ~]# vim /usr/local/nginx/html/test2.php
<?php
$mysqli = new mysqli('localhost','root','密碼','mysql');
//注意:root爲mysql賬戶名稱,密碼需要修改爲實際mysql密碼,無密碼則留空即可
if (mysqli_connect_errno()){
die('Unable to connect!'). mysqli_connect_error();
}
$sql = "select * from user";
$result = $mysqli->query($sql);
while($row = $result->fetch_array()){
printf("Host:%s",$row[0]);
printf("</br>");
printf("Name:%s",$row[1]);
printf("</br>");
}
?>
4,測試(之前寫過一個php腳本)
firefox 192.168.4.5/test.php (顯示33)
firefox http://192.168.4.5/test1.php
firefox http://192.168.4.5/test2.php