Centos7.6 LNMP環(huán)境搭建

本文使用基于騰訊云服務(wù)器的Centos7.6搭建NGINX苦始,MySQL寞钥,PHP開發(fā)環(huán)境,所有步驟的最后一次測試時間是2020年5月15日陌选,文末Tips[1]也或許解決你在搭建開發(fā)環(huán)境時遇到的不少問題

在搭建環(huán)境前你應(yīng)該要懂

  • 基本的Linux操作指令理郑,Vim基本指令
  • 騰訊云控制臺安全組配置
  • Xshell登錄云服務(wù)器

注意:教程將直接從登錄服務(wù)器后開始,基本指令本教程將不再贅述

教程開始

前置操作

  1. 關(guān)閉防火墻咨油,并禁止開機(jī)自啟動
    • systemctl stop firewalld.service
    • systemctl disable firewalld.service

Nginx安裝和配置

  1. 安裝Nginx
    • yum install nginx

注意:輸入上面的指令后您炉,會出現(xiàn)下圖提示。這種類型提示在后面的安裝中也會出現(xiàn)役电,文中無特殊說明一律選擇'y' 再回車即可赚爵。

圖1.1 yum安裝Nginx

  1. 啟動nginx,并設(shè)置為開機(jī)啟動
    • systemctl start nginx
    • systemctl enable nginx

注意:輸入上面的指令后,在瀏覽器中輸入服務(wù)器 ip效果如下冀膝,表示Nginx啟動成功

圖1.2 Nginx啟動成功

  1. 配置nginx
    vim /etc/nginx/nginx.conf
    打開文件后唁奢,在下圖a處新增代碼塊1,b出新增代碼塊2
圖五 nginxconf配置
命令1  index index.php index.html index.htm;
命令2   
        location ~ .php$ {
        try_files $uri =404;
        root /usr/share/nginx/html;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi.conf;
}

配置完后效果如下圖


圖六 nginxconf配置完成

步驟二 PHP搭建

1.安裝PHP

yum install php php-mysqlnd php-fpm

2.編輯PHP配置文件

vim /etc/php.ini

在文件中找到 ;cgi.fix_pathinfo=1 后窝剖,把它改成

cgi.fix_pathinfo=0

改完后保存并退出麻掸。
3.創(chuàng)建nginx用戶和用戶組

groupadd -r nginx
useradd -r -g nginx nginx

這一步是為了保險(xiǎn),分別輸入以上指令即可赐纱,不用管提示脊奋。
4.編輯PHP-FPM配置文件

vim /etc/php-fpm.d/www.conf
圖七 更改PHP-FPM配置文件

如上圖,將

user = 某某某
group = 某某某

改為

user = nginx
group = nginx

5.啟動PHP—FPM疙描、設(shè)置開機(jī)啟動并重啟nginx

systemctl start php-fpm
systemctl enable php-fpm
systemctl restart nginx

6.在/usr/share/nginx/html/ 下創(chuàng)建phpinfo.php

vim /usr/share/nginx/html/phpinfo.php

在新創(chuàng)建文件中輸入 <?php phpinfo();?>诚隙,效果如圖

圖八 新文件

測試:保存并退出后,在瀏覽器中輸入 主機(jī)IP/phpinfo.php 若顯示為下圖則步驟一淫痰、步驟二配置成功最楷!
圖九 php和nginx配置成功

特別注意:第二步需要用到一些vim編輯命令,如查找待错、保存籽孙、進(jìn)入編輯模式和進(jìn)入命令模式等,需要自己先行學(xué)習(xí)

步驟三 Mysql搭建

centos7 在安裝mysql系列時火俄,需要補(bǔ)充yum源犯建!
1.補(bǔ)充yum源

wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
rpm -ivh mysql-community-release-el7-5.noarch.rpm

2.安裝mysql

yum install mysql-community-server

mysql安裝時間比較久,可以喝杯茶休息一下瓜客。中途會出現(xiàn)多次確認(rèn)提示适瓦,輸入 y 回車即可
3.啟動mysql并設(shè)置為開機(jī)自啟動

systemctl start mysqld
systemctl enable mysqld

4.設(shè)置mysql密碼 請務(wù)必謹(jǐn)記你所設(shè)置的密碼,親身經(jīng)歷谱仪,血的教訓(xùn)

mysql -uroot
set password for ‘root’@‘localhost’ = password('你的密碼');   (注意玻熙,這一句最后有分號)
exit

測試:輸入mysql -u root -p 你的密碼 若成功進(jìn)入mysql則為成功。效果如下圖

圖十 成功進(jìn)入mysql

到這個位置疯攒,LNMP環(huán)境已經(jīng)搭建成功了嗦随,下面開始是phpmyadmin安裝教程,有需要的選看即可


二 phpmyadmin安裝

注意敬尺,安裝的phpmyadmin要與已經(jīng)安裝的php和mysql版本相匹配枚尼,否則會出現(xiàn)錯誤
1.查看php版本

php -v

效果如下圖


圖一 PHP版本

2.查看mysql
使用 用戶名和密碼登錄mysql后 輸入

status; (注意這個分號!)

查看mysql版本砂吞,效果如下圖

圖二 mysql版本

到phpmyadmin官網(wǎng)查看自己的php和mysql版本所對應(yīng)的phpmyadmin
圖三 phpadmin版本

我的php版本是5.4.16署恍,MySQL版本是5.6.40,所以我需要下載的phpmyadmin版本為4.0.10.20
3.進(jìn)入nginx根目錄

cd /usr/share/nginx/html

4.下載phpmyadmin

wget https://files.phpmyadmin.net/phpMyAdmin/4.0.10.20/phpMyAdmin-4.0.10.20-all-languages.tar.gz

5.解壓所下載的壓縮包

tar -xzvf phpMyAdmin-4.0.10.20-all-languages.tar.gz

6.將解壓后的文件夾改名為phpmyadmin

mv phpMyAdmin-4.0.10.20-all-languages phpmyadmin

測試:在瀏覽器中輸入 IP/phpmyadmin蜻直,進(jìn)入登錄頁面

圖四 phpmyadmin登錄

登錄phpmyadmin的用戶名和密碼是之前設(shè)置的登錄mysql的密碼(默認(rèn)用戶名為root)
到這里盯质,phpmyadmin就安裝完畢了袁串!


一.出現(xiàn)下圖錯誤

注意:若出現(xiàn)Module 'mbstring' already loaded in Unknown on line 0 則跳過第2步(如果已經(jīng)執(zhí)行了第二步,把那條新增語句刪除即可)

圖五 The mbstring extension is missing

1.先安裝php-mbstring
yum install php-mbstring
2.編輯php配置文件
vim /etc/php.ini
在Dynamic Extension下新增語句 extension=mbstring.so
效果如圖

圖六 更改phpini

3.重啟nginx和php-fpm
systemctl restart nginx
systemctl restart php-fpm

二.帳號密碼正確呼巷,登錄PHPmyadmin無反應(yīng)

1.更改session的權(quán)限
chmod -R 777 /var/lib/php/session
2.重啟nginx和php-fpm
systemctl restart nginx
systemctl restart php-fpm

三.php連接數(shù)據(jù)庫超時

1.在服務(wù)器入口規(guī)則開放3306端口
2.服務(wù)器登錄mysql般婆,輸入命令
grant all PRIVILEGES on 數(shù)據(jù)庫名.* to '用戶名'@'主機(jī)地址' identified by '登錄密碼' WITH GRANT OPTION;
3.再輸入
flush privileges;

四.無法正常訪問云服務(wù)器/服務(wù)器不支持ping

1.到控制臺安全組里面,開啟22等一系列端口和ICMP等一系列協(xié)議即可
2.偶見服務(wù)器重啟后朵逝,暫時ping不可達(dá)蔚袍,靜待十幾分鐘即可

五.phpmyadmin安裝后,輸入IP/phpmyadmin 顯示“404 not found”

可能為nginx.conf中php塊配置錯誤配名,按教程重新配置即可

六.phpmyadmin顯示403 forbiddend

檢查nginx.conf sever塊中的index啤咽,恢復(fù)默認(rèn)即可

七.phpmyadmin顯示“Cannot start session without errors, please check errors given in your PHP and/or webserver log file and configure your PHP installation properly.”

在php的配置文件(/etc/php.ini)php.ini中,找到配置項(xiàng)session.auto_start渠脉,將其后面的值從0改為1

八.配置https

1.去騰訊云免費(fèi)申請證書
2.根據(jù)官方教程在conf中加入一個server(先在安全組中開放443端口):

server {
listen 443;
server_name www.域名.cn;
ssl on;
ssl_certificate 根目錄/1_www.域名.cn_bundle.crt;
ssl_certificate_key 根目錄/2_www.域名.cn.key;
ssl_session_timeout 5m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:HIGH:!aNULL:!MD5:!RC4:!DHE;
ssl_prefer_server_ciphers on;
location / {
root 根目錄;
index index.html index.htm;
}
}

3.把證書下載到電腦后宇整,在nginx中將1_www.域名.cn_bundle.crt和2_www.域名.cn.key 上傳到服務(wù)器根目錄
特別要注意

1.conf中括號的配對,以及每條語句后的分號
2.根目錄不要寫錯(如usr寫錯成user)
4.在所需的server中加入一個跳轉(zhuǎn)語句,這樣http會自動跳轉(zhuǎn)到https
rewrite ^(.*) https://$host$ 1 permanent;

九、配置證書后的各種錯誤解決

1.phpmyadmin無法使用(進(jìn)入自動下載php)

在443的server里面加入php快


  1. Tips ?

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末萄金,一起剝皮案震驚了整個濱河市业崖,隨后出現(xiàn)的幾起案子盲链,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,084評論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場離奇詭異胶惰,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)霞溪,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,623評論 3 392
  • 文/潘曉璐 我一進(jìn)店門孵滞,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人鸯匹,你說我怎么就攤上這事坊饶。” “怎么了殴蓬?”我有些...
    開封第一講書人閱讀 163,450評論 0 353
  • 文/不壞的土叔 我叫張陵匿级,是天一觀的道長。 經(jīng)常有香客問我科雳,道長根蟹,這世上最難降的妖魔是什么脓杉? 我笑而不...
    開封第一講書人閱讀 58,322評論 1 293
  • 正文 為了忘掉前任糟秘,我火速辦了婚禮,結(jié)果婚禮上球散,老公的妹妹穿的比我還像新娘尿赚。我一直安慰自己,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,370評論 6 390
  • 文/花漫 我一把揭開白布凌净。 她就那樣靜靜地躺著悲龟,像睡著了一般。 火紅的嫁衣襯著肌膚如雪冰寻。 梳的紋絲不亂的頭發(fā)上须教,一...
    開封第一講書人閱讀 51,274評論 1 300
  • 那天,我揣著相機(jī)與錄音斩芭,去河邊找鬼轻腺。 笑死,一個胖子當(dāng)著我的面吹牛划乖,可吹牛的內(nèi)容都是我干的贬养。 我是一名探鬼主播,決...
    沈念sama閱讀 40,126評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼琴庵,長吁一口氣:“原來是場噩夢啊……” “哼误算!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起迷殿,我...
    開封第一講書人閱讀 38,980評論 0 275
  • 序言:老撾萬榮一對情侶失蹤儿礼,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后庆寺,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體蜘犁,經(jīng)...
    沈念sama閱讀 45,414評論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,599評論 3 334
  • 正文 我和宋清朗相戀三年止邮,在試婚紗的時候發(fā)現(xiàn)自己被綠了这橙。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點(diǎn)故事閱讀 39,773評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡导披,死狀恐怖屈扎,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情撩匕,我是刑警寧澤鹰晨,帶...
    沈念sama閱讀 35,470評論 5 344
  • 正文 年R本政府宣布,位于F島的核電站止毕,受9級特大地震影響模蜡,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜扁凛,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,080評論 3 327
  • 文/蒙蒙 一忍疾、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧谨朝,春花似錦卤妒、人聲如沸甥绿。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,713評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽共缕。三九已至,卻和暖如春士复,著一層夾襖步出監(jiān)牢的瞬間图谷,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,852評論 1 269
  • 我被黑心中介騙來泰國打工阱洪, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留蜓萄,地道東北人。 一個月前我還...
    沈念sama閱讀 47,865評論 2 370
  • 正文 我出身青樓澄峰,卻偏偏與公主長得像嫉沽,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子俏竞,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,689評論 2 354