lnmp 刪除海外虛擬主機、添加及偽靜態(tài)使用教程
發(fā)布時(shí)間:2022-05-20 10:03
來(lái)源:好主機
閱讀:144
作者:新網(wǎng)知識社區
欄目: 虛擬主機
歡迎投稿:712375056
??所謂虛擬主機,也叫“網(wǎng)站”,就是把一臺運行在互聯(lián)網(wǎng)上的服務(wù)器劃分成多個(gè)“虛擬”的服務(wù)器,每一個(gè)虛擬主機都具有獨立的和完整的Internet服務(wù)器(支持WWW、FTP、E-mail等)功能。虛擬主機是網(wǎng)絡(luò )發(fā)展的福音,極大的促進(jìn)了網(wǎng)絡(luò )技術(shù)的應用和普及。同時(shí)租用服務(wù)也成了網(wǎng)絡(luò )時(shí)代新的經(jīng)濟形式。虛擬主機的租用類(lèi)似于房屋租用。海外虛擬主機是在網(wǎng)絡(luò )服務(wù)器上劃分出一定的磁盤(pán)空間供用戶(hù)放置站點(diǎn)、應用組件等,提供必要的站點(diǎn)功能、數據存放和傳輸功能。下面就由小編和大家講一講lnmp 刪除海外虛擬主機。
一、添加網(wǎng)站(虛擬主機)
??如果輸入有錯誤需要刪除時(shí),可以按住Ctrl再按Backspace鍵進(jìn)行刪除。
??執行:lnmp vhost add出現如下界面:
??這里要輸入要添加網(wǎng)站的域名,我們已添加www.vpser.net域名為例,如上圖提示后輸入域名 www.vpser.net 回車(chē)后提示
??這里詢(xún)問(wèn)是否添加更多域名,直接再輸入要綁定的域名,這里我們將 vpser.net 也綁上,多個(gè)域名空格隔開(kāi),如不需要綁其他域名就直接回車(chē)。
??(注:帶www和不帶www的是不同的域名,如需帶www和不帶的www的域名都訪(fǎng)問(wèn)同一個(gè)網(wǎng)站需要同時(shí)都綁定)。
??下面需要設置網(wǎng)站的目錄
??網(wǎng)站目錄不存在的話(huà)會(huì )創(chuàng )建目錄。也可以輸入已經(jīng)存在的目錄或要設置的目錄(注意如要輸入必須是全路徑即以/開(kāi)頭的完整路徑)。不輸入直接回車(chē)的話(huà),采用默認目錄:/home/wwwroot/域名
??偽靜態(tài)可以使URL更加簡(jiǎn)潔也利于SEO,如程序支持并且需要設置偽靜態(tài)的話(huà),如啟用輸入 y ,不啟用輸入 n 回車(chē)(注意LNMPA或LAMP模式?jīng)]有該選擇項!)。
??默認已經(jīng)有了discuz、discuzx、discuzx2(Discuz X二級目錄)、wordpress、wp2(WordPress二級目錄)、typecho、typecho2(Typecho二級目錄)、sablog、emlog、dabr、phpwind、、dedecms、drupal、ecshop、shopex等常用的Nginx偽靜態(tài)配置文件,可以直接輸入名稱(chēng)進(jìn)行使用,如果是二級目錄則需要對應配置文件里的二級目錄的名稱(chēng)。
??這一步是設置日志,如啟用日志輸入 y ,不啟用輸入 n 回車(chē)。
??如果啟用需要再輸入要設置的日志的名稱(chēng),默認日志目錄為:/home/wwwlogs/ 默認文件名為:域名.log 回車(chē)確認后,會(huì )詢(xún)問(wèn)是否添加數據庫和數據庫用戶(hù)。
??如果需要添加數據庫輸入 y ,不添加數據庫輸入 n 回車(chē)。
??如果要添加,需要先驗證MySQL的root密碼(注:輸入密碼將不顯示)
??提示Enter database name: 后輸入要創(chuàng )建的數據庫名稱(chēng),要創(chuàng )建的數據庫用戶(hù)名會(huì )和數據庫同名,回車(chē)確認。
??提示Please enter password for mysql user 數據庫名: 后輸入要設置的密碼,回車(chē)確認。
??如果安裝了FTP服務(wù)器會(huì )詢(xún)問(wèn)是否添加FTP賬號
??如果需要添加輸入 y ,不添加輸入 n 回車(chē)。
??提示Enter ftp account name: 后輸入要創(chuàng )建的FTP賬號名稱(chēng),回車(chē)確認。
??提示Enter password for ftp account FTP賬號: 后輸入要設置的密碼,回車(chē)確認。
??接下來(lái)是1.4新增的添加SSL功能
??如果需要添加輸入 y ,不添加輸入 n 回車(chē)。
??選擇了添加SSL會(huì )提示
??有兩個(gè)選項,1 選項為使用自己準備好的SSLssl/' target='_blank'>證書(shū)和key。
??> > 提示Please enter full path to SSL Certificate file 后輸入要SSL證書(shū)的完整路徑和文件名,回車(chē)確認。
??> > 提示Please enter full path to SSL Certificate Key file: 后輸入輸入要key文件的完整路徑和文件名,回車(chē)確認。
??2 選項為使用免費SSL證書(shū)提供商Letsencrypt的證書(shū),自動(dòng)生成SSL證書(shū)等信息。
??需要輸入一個(gè)郵箱回車(chē)確認。
??提示 Press any key to start create virtul host... 后,回車(chē)確認便會(huì )開(kāi)始創(chuàng )建虛擬主機。
??添加成功會(huì )提示添加的域名、目錄、偽靜態(tài)、日志、數據庫、FTP等相關(guān)信息,如下圖:
??二、偽靜態(tài)管理
??LNMPA或LAMP可以直接使用網(wǎng)站根目錄下放.htaccess 來(lái)設置偽靜態(tài)規則(具體規則可以去程序官網(wǎng)網(wǎng)站找google百度),但是在LNMP下,需要使用Nginx偽靜態(tài)規則。
??偽靜態(tài)可以隨時(shí)添加或刪除,如果添加完虛擬主機后忘記或沒(méi)有添加偽靜態(tài),可以通過(guò)修改配置文件來(lái)添加偽靜態(tài)。
??
虛擬主機配置文件在:/usr/local/nginx/conf/vhost/域名.conf
??偽靜態(tài)規則文件需要放在/usr/local/nginx/conf/ 下面。
??編輯虛擬主機配置文件,可以使用vi、nano或winscp,后2個(gè)工具對新手來(lái)說(shuō)簡(jiǎn)單些。
??例如前面我們添加的虛擬主機,打開(kāi)后前半部分配置會(huì )顯示如下:
??在root /home/wwwroot/www.vpser.net;這一行下面添加:
??include wordpress.conf;
??上面的wordpress.conf為偽靜態(tài)文件,如需要其他偽靜態(tài)文件自己創(chuàng )建個(gè)并上傳到/usr/local/nginx/conf/ 下面并include 偽靜態(tài).conf; 加完保存,執行:/etc/init.d/nginx restart重啟生效,如果報錯可能是添加有誤或偽靜態(tài)規則有誤。
??1.4及之前版本偽靜態(tài)文件都在 /usr/local/nginx/conf/ 目錄下
??1.5及之后版本偽靜態(tài)文件都在 /usr/local/nginx/conf/rewrite 目錄下
??偽靜態(tài)文件名稱(chēng)后面帶2的是二級目錄的偽靜態(tài),可以根據自己需求修改里面二級目錄的名稱(chēng)或復制為其他名字后include到虛擬主機配置文件中。
??三、上傳網(wǎng)站程序
??如果已經(jīng)安裝FTP服務(wù)器可以直接使用ftp客戶(hù)端通過(guò)你的FTP信息登錄后上傳網(wǎng)站或sftp等軟件上傳網(wǎng)站,設置好相關(guān)權限開(kāi)始安裝即可。
??上傳網(wǎng)站后建議執行:chown www:www -R /path/to/dir 對網(wǎng)站目錄進(jìn)行權限設置,/path/to/dir替換為你網(wǎng)站目錄。
??為了
安全可以將一些不需要PHP運行的上傳文件之類(lèi)的目錄去掉執行權限,參考:http://wap.friendlycc.com.cn/
??四、已存在虛擬主機添加ssl證書(shū)開(kāi)啟https
??對于已存在的虛擬主機添加https站點(diǎn),可以執行:lnmp ssl add命令添加ssl證書(shū),目前有兩種方式一種是使用自備的ssl證書(shū),二是采用Let'sEncrypt的免費證書(shū)。添加過(guò)程和前面的添加虛擬主機的過(guò)程是一樣的,只是會(huì )多一項填寫(xiě)ssl證書(shū)和key的步驟或直接選擇Let'sEncrypt自動(dòng)生成證書(shū)。
??如果是1.*版本升級到1.4或更改版本的需要參考:http://wap.friendlycc.com.cn/
??五、列出網(wǎng)站(虛擬主機)
??執行:lnmp vhost list
??六、刪除網(wǎng)站(虛擬主機)
??執行:lnmp vhost del
??刪除網(wǎng)站會(huì )先列出當前已有虛擬主機,按提示輸入要刪除的虛擬主機域名 回車(chē)確認。
??這里只是刪除虛擬主機配置文件,網(wǎng)站文件并不會(huì )刪除需要自己刪除。
??LNMP 1.2下需要執行:chattr -i /網(wǎng)站目錄/.user.ini 后才能刪除網(wǎng)站目錄。
??當執行chown或chmod對網(wǎng)站目錄屬主屬組或權限進(jìn)行操作時(shí)可能會(huì )提示chown: changing ownership of `/home/wwwroot/default/.user.ini': Operation not permitted,不需要理會(huì ),如果有強迫癥可以參考前面先進(jìn)行chattr -i的操作。
??使用lnmp或者wdcp建立的站點(diǎn)后刪除站點(diǎn)目錄無(wú)法刪除,甚至已經(jīng)加了root權限.
??解決辦法
??運行:chattr -i /home/wwwroot/yoursite/.user.ini
??在進(jìn)行刪除
??chattr命令:有時(shí)候你發(fā)現用root權限都不能修改某個(gè)文件,大部分原因是曾經(jīng)用chattr命令鎖定該文件了。chattr命令的作用很大,通過(guò)chattr命令修改屬性能夠提高系統的
安全性,但是它并不適合所有的目錄。chattr命令不能保護/、/dev、/tmp、/var目錄。lsattr命令是顯示chattr命令設置的文件屬性.
??七、默認網(wǎng)站(虛擬主機)
??LNMP默認網(wǎng)站配置文件:/usr/local/nginx/conf/nginx.conf
??LNMPA默認網(wǎng)站配置文件:/usr/local/nginx/conf/nginx.conf 和 /usr/local/apache/conf/extra/httpd-vhosts.conf
??LAMP默認網(wǎng)站配置文件:/usr/local/apache/conf/extra/httpd-vhosts.conf
??八、防跨目錄設置
??LNMP 1.1及之前的版本使用php.ini里面,open_basedir設置
??LNMP 1.2及更高版本防跨目錄功能使用.user.ini,該文件在網(wǎng)站根目錄下,可以修改.user.ini 里面的open_basedir的值來(lái)設置限制訪(fǎng)問(wèn)的目錄或刪除來(lái)移除防跨目錄的設置。
??.user.ini文件無(wú)法直接修改,如要修或刪除需要先執行:chattr -i /網(wǎng)站目錄/.user.ini
??可以使用winscp文件管理、vim編輯器或nano編輯器進(jìn)行修改。
??刪除的話(huà)rm -f /網(wǎng)站目錄/.user.ini 就可以。
??修改完成后再執行:chattr i /網(wǎng)站目錄/.user.ini
??.user.ini不需要重啟一般5分鐘左右生效,也可以重啟一下php-fpm立即生效。
??九、如果要更改網(wǎng)站目錄必須要按上述方法修改防跨目錄的設置,否則肯定報錯
??LNMP 1.4上如果不想用防跨目錄或者修改.user.ini的防跨目錄的目錄還需要將 /usr/local/nginx/conf/fastcgi.conf 里面的fastcgi_param PHP_ADMIN_VALUE "open_basedir=$document_root/:/tmp/:/proc/"; 在該行行前添加 # 或刪除改行,需要重啟nginx。
??LNMP 1.4上也可以直接使用lnmp1.4/tools/ 目錄下的 ./remove_open_basedir_restriction.sh 進(jìn)行移除。
??在Thinkphp、codeigniter、Laravel等框架下,網(wǎng)站目錄一般是在public下,但是public下的程序要跨目錄調用public上級目錄下的文件,因為L(cháng)NMP默認是不允許跨目錄訪(fǎng)問(wèn)的,所以都是必須要將防跨目錄訪(fǎng)問(wèn)的設置去掉,有時(shí)候這些框架類(lèi)的程序提示500錯誤也可能是這個(gè)問(wèn)題引起的。
??LNMPA或LAMP 模式1.2版本以上的防跨目錄的設置使用的對應apache虛擬主機配置文件(lnmp管理工具添加的話(huà)文件是 /usr/local/apache/conf/vhost/域名.conf )里的php_admin_value open_basedir參數進(jìn)行設置。如果不需要設置可以在前面加 # 進(jìn)行注釋?zhuān)蜃孕行薷哪夸浀南拗啤?
??重啟apache生效。
??十、pathinfo設置
??LNMP上各個(gè)版本pathinfo各個(gè)版本的設置基本一樣:
??lnmp v1.1上,修改對應虛擬主機的配置文件(/usr/local/nginx/conf/vhost/域名.conf)
??去掉#include pathinfo.conf前面的#,把try_files $uri =404; 前面加上# 注釋掉。
??1.2,1.3,1.4,1.5及以上版本,修改對應虛擬主機的配置文件(/usr/local/nginx/conf/vhost/域名.conf)
??將include enable-php.conf;替換為include enable-php-pathinfo.conf;
??1.4版本多PHP版本啟用pathinfo的話(huà),進(jìn)入/usr/local/nginx/conf目錄,拷貝一份enable-php-pathinfo.conf 命名為 enable-php7.2-pathinfo.conf,將 enable-php7.2.conf 文件里 fastcgi_pass這一行內容完整的復制下來(lái)替換 enable-php7.2-pathinfo.conf 文件中的 fastcgi_pass這一行 ,保存,再按前面的方法修改虛擬主機 include enable-php7.2-pathinfo.conf; 就行了,其他版本以此類(lèi)推。
??1.5版本多PHP版本開(kāi)啟pathinfo的話(huà),可以在lnmp vhost add 是選擇啟用pathinfo,如果存在多PHP版本就會(huì )提示你選擇,也可以直接修改虛擬主機配置文件將include enable-php.conf; 替換為 include enable-php7.2-pathinfo.conf; 保存;修改pathinfo需要重啟nginx生效。
??海外的虛擬主機,除中國大陸以外的其他國家和地區的虛擬主機,其中最常見(jiàn)的就是:
香港虛擬主機、臺灣虛擬主機、
美國虛擬主機、歐洲虛擬主機,是一些站長(cháng)和國際貿易公司的最佳選擇。小伙伴們要想獲得更多lnmp 刪除海外虛擬主機的內容,請關(guān)注特網(wǎng)!