/etc/httpd/conf.d/welcome.php
du -sh命令查看大小
lnmp(C7)html
Nginx:端口:80
php-fpm:端口9000
安裝:位置錯誤容易引發實驗錯誤mysql
準備工做
1.環境要求:
操做系統:CentOS 7.X 64位
關閉SELinux和iptables防火牆
這次試驗環境使用網絡yum源,保證系統能正常鏈接互聯網
2.網絡yum源:
先將系統自帶的yum配置文件移除或者刪除,而後下載如下兩個配置文件
官方基礎:http://mirrors.163.com/.help/CentOS7-Base-163.repo
http://mirrors.aliyun.com/repo/Centos-7.repo
epel拓展:http://mirrors.aliyun.com/repo/epel-7.repo
下載完成後,須要使用命令清除掉原有的yum緩存,使用新的配置文件創建緩存
# yum clean all #清除掉原有緩存列表
# yum makecache #創建新的緩存列表
# yum update #將全部能更新的軟件更新(非必選)
3.安裝編譯工具和依賴軟件包:
# yum -y install gcc gcc-c++ pcre-devel openssl openssl-devel zlib-devel ncurses-devel cmake bison libxml2-devel libpng-devel
4. Nginx、MySQL、PHP三大軟件的源碼包下載地址:
Nginx:http://nginx.org/en/download.html
MySQL:https://dev.mysql.com/downloads/mysql/
PHP:http://www.php.net/
版本選用:
Nginx: 1.12.* #選用軟件的穩定版便可
Mysql: 5.5.* #5.5以上版本須要1G以上的內存,不然沒法安裝
PHP: 7.1.* #咱們使用的是php7
注意:每次安裝LNMP時,軟件包的小版本都不同,官方會對其大版本下的小版本進行覆蓋式更新,本文內部分連接會失效,切記按照下載版本進行安裝。
2、源碼軟件包安裝
1.Nginx
Nginx是一款輕量級的Web 服務器/反向代理服務器及電子郵件(IMAP/POP3)代理服務器,在BSD-like 協議下發行。其特色是佔有內存少,併發能力強。
1.1 下載Nginx源碼包nginx
1.2 建立用於運行Nginx的用戶c++
1.3 解壓縮Nginx並安裝sql
1.4 上傳編寫好的nginx啓動管理腳本(見文本尾部)
啓動nginx:ln -s /usr/local/nginx/sbin/* /usr/local/bin
啓動:nginx &
2.MySQL
下載:https://dev.mysql.com/downloads/mysql/
選擇:MySQL Community Server 5.5 »
選擇:Select Version: 按照本身要求選擇
Select Operating System: Source Code
Select OS Version: Generic Linux
格式:mysql-N.N.NN.tar.gzapache
2.1建立用於運行Mysql的用戶:vim
2.2解壓縮Mysql並安裝:緩存
2.3修改安裝後的目錄權限bash
2.4生成Mysql配置文件
2.5初始化,生成受權表
初始化成功標誌:兩個ok
2.6生成Mysql的啓動和自啓動管理腳本
切換到mysql的源碼解壓縮目錄下的support-files
2.7給mysql的root用戶設置密碼
3.PHP
下載:http://www.php.net/
3.1解壓縮PHP並安裝:
報錯提示:若遇到libpng.so not found .報錯(老版本的PHP會出現此問題)
解決方案:
3.2生成php配置文件
複製源碼包內的配置文件到安裝目錄下,並更名便可
3.3建立軟鏈接,使用php相關命令是更方便
ln -s /usr/local/php/bin/* /usr/local/bin/
ln -s /usr/local/php/sbin/* /usr/local/sbin/
4.配置Nginx鏈接PHP(重難點)
4.1 nginx鏈接php須要啓動php-fpm服務
生成php-fpm的配置文件,並修改指定參數
修改指定條目的參數:
pid = run/php-fpm.pid
修改用戶和組的指定用戶
user = nginx
group = nginx
修改Nginx啓動管理腳本:將php-fpm的註釋取消掉便可
4.2 修改Nginx的配置文件,使其識別.php後綴的文件
取消下列行的註釋,並修改include選項的後綴爲fastcgi.conf,並注意每一行結尾的分號和大括號
測試:
重啓Nginx服務,建立php測試文件,訪問並查看是否解析
啓動nginx:/usr/local/nginx/sbin/nginx &
啓動php-fpm:php-fpm
端口:80、9000 ps aux | grep 端口
4.3 修改Nginx配置文件,使其默認自動加載php文件
location / {
root html; #Nginx的默認網頁路徑:PREFIX/html
index index.php index.html; #設置默認加載的頁面,以及優先級
}
附件:建議使用時先複製到文本文件中查看下是否有字符集問題
#################################Nginx啓動管理腳本##################################
ngxc="/usr/local/nginx/sbin/nginx"
pidf="usr/local/nginx/logs/nginx.pid"
ngxc_fpm="/usr/local/php/sbin/php-fpm"
pidf_fpm="/usr/local/php/var/run/php-fpm.pid"
case "$1" in
start)
$ngxc -t &> /dev/null
if [ $? -eq 0 ];then
$ngxc
$ngxc_fpm
echo "nginx service start success!"
else
$ngxc -t
fi
;;
stop)
kill -s QUIT $(cat $pidf)
kill -s QUIT $(cat $pidf_fpm)
echo "nginx service stop success!"
;;
restart)
$0 stop
$0 start
;;
reload)
$ngxc -t &> /dev/null
if [ $? -eq 0 ];then
kill -s HUP $(cat $pidf)
kill -s HUP $(cat $pidf_fpm)
echo "reload nginx config success!"
else
$ngxc -t
fi
;;
*)
echo "please input stop|start|restart|reload."
exit 1
esac
screen -S:防掉線
screen -r:恢復以前的狀態
xcache:設置的密碼後面有用
uninstall.sh:卸載命令(只針對腳本)
install.sh安裝軟件(使用方式:./install.sh)
lnmp.org管理命令:lnmp {start|stop等}#因此軟件一塊兒管理
lnmp {apache等}+{start等} #單獨管理某一個
存放目錄:/usr/local/* 網頁目錄:/home/wwwroot/default/ 網站服務器日誌目錄:/home/wwwlogs/