1、系統(tǒng)要求及安裝步驟
參考LNMP官網(wǎng)?安裝 - LNMP一鍵安裝包
2匾灶、申請SSL證書(備用)
我的域名、服務(wù)器都在阿里云租漂,而且阿里云給認(rèn)證用戶(實(shí)名個人/企業(yè)主體)提供20個SSL的免費(fèi)額度阶女,足夠使用頂級域名、二級域名的使用哩治。以下SSL申請即以阿里云平臺申請SSL為例秃踩。
1、先登錄阿里云业筏,訪問證書資源包頁面憔杨,如下選擇后點(diǎn)擊購買(注意,結(jié)算應(yīng)該是0元):
2蒜胖、進(jìn)入【控制臺】-【SSL證書(應(yīng)用安全)】
3芍秆、點(diǎn)擊【證書資源包】-【證書申請】
點(diǎn)擊【確定】
4、成功后點(diǎn)擊列表中的【證書申請】
5翠勉、給當(dāng)前證書綁定域名(只填寫需要綁定的域名跟選擇對應(yīng)的聯(lián)系人,其他默認(rèn))
6霉颠、點(diǎn)擊【下一步】提交申請对碌,如果域名在阿里云,會自動生成DNS的TXT記錄蒿偎,如果不在阿里云朽们,請手動進(jìn)行域名的TXT解析,添加成功后诉位,點(diǎn)擊【驗(yàn)證】按鈕骑脱。
7、域名的TXT解析驗(yàn)證成功后苍糠,點(diǎn)擊【提交審核】后叁丧,會提示
已經(jīng)成功提交到CA公司,請您保持電話暢通,并及時查閱郵箱中來自CA公司的電子郵件拥娄。
8蚊锹、返回【證書資源包】列表后,點(diǎn)擊操作欄的【下載】按鈕
9稚瘾、在彈出的頁面中點(diǎn)擊Nginx的下載按鈕牡昆,會下載的LNMP的虛擬主機(jī)對應(yīng)的SSL文件(備用)
下載的證書文件壓縮包,文件內(nèi)容
3摊欠、虛擬主機(jī)的添加和管理
參考LNMP官網(wǎng)?LNMP添加丢烘、刪除虛擬主機(jī)及偽靜態(tài)使用教程
在添加域名后出現(xiàn)詢問是否綁定SSL,輸入y回車些椒,提示如下:
1: Use your own SSL Certificate and Key
2: Use Let's Encrypt to create SSL Certificate and Key
然后輸入1播瞳,回車(因?yàn)槲覀儠褂玫?步中已下載的SSL文件,假設(shè)文件已經(jīng)上傳到對應(yīng)虛擬主機(jī)的根目錄)
/home/wwwroot/你的域名/下載文件的中的.pem
根據(jù)提示摊沉,再次輸入
/home/wwwroot/你的域名/下載文件的中的.key
晚上以上操作后狐史,使用FTP上傳下載的兩個證書文件到你新建虛擬主機(jī)的根目錄,重啟Nginx说墨。
lnmp nginx restart
4骏全、虛擬站點(diǎn)vhost的讀寫授權(quán)
LNMP建立虛擬主機(jī)后,目錄無www權(quán)限尼斧,讀寫操作會提示文件無權(quán)限姜贡,所以需要使用如下命令進(jìn)行授權(quán)
chmod 777 /home/wwwroot/虛擬主機(jī)目錄/授權(quán)讀寫的目錄名/
chown www:www -R /home/wwwroot/虛擬主機(jī)目錄/授權(quán)讀寫的目錄名/
而虛擬主機(jī)下的.user.ini為防止跨目錄訪問的系統(tǒng)文件,使用命令時會提示無權(quán)限修改棺棵。遇到這樣的情況可以先使用chattr的-i命令允許修改.user.ini文件楼咳,如下:
chattr -i /home/wwwroot/網(wǎng)站目錄/.user.ini
然后使用chown命令進(jìn)行授權(quán)
chown www:www -R /home/wwwroot/虛擬主機(jī)目錄/授權(quán)讀寫的目錄名/
修改后再使用chattr的+i命令設(shè)置.user.ini為系統(tǒng)文件,確保網(wǎng)站的安全烛恤。
chattr +i /home/wwwroot/網(wǎng)站目錄/.user.ini
5母怜、LNMP的安全設(shè)置
LNMP安裝后會在/home/wwwroot/default/目錄下有安裝成功的頁面index.html,建議刪除index.html文件缚柏,其他文件重命名苹熏,phpmyadmin進(jìn)行改名。
6币喧、SSL設(shè)置后所有http訪問強(qiáng)制轉(zhuǎn)https
進(jìn)行SSL設(shè)置后轨域,建議使用https進(jìn)行網(wǎng)站的訪問,LNMP中建議使用301跳轉(zhuǎn)杀餐,使用VI編輯虛擬主機(jī)的配置文件
vi /usr/local/nginx/conf/vhost/域名.conf
進(jìn)入編輯狀態(tài)干发,對http的80端口中的server進(jìn)行如下設(shè)置:
server {
? ? listen 80;
? ? server_name yourdomain.com;
? ? return 301
? ? https://$host$request_uri;
}
按鍵盤esc后,輸入wq史翘,回車保存枉长,重啟Nginx即可冀续。
lnmp nginx restart
如果無法重啟成功,請查看文件編輯是否出錯搀暑,重新修改后保存沥阳,重啟Nginx。
至此自点,關(guān)于LNMP的虛擬主機(jī)開通桐罕,SSL申請、SSL綁定桂敛、強(qiáng)制https訪問都已完成功炮。
如果覺得還不錯,請支持我的原創(chuàng)术唬。