上門一對一計算機家教
當前位置: 首頁 > 建站心得 >

Linux主機LNMP添加、刪除虛擬主機及偽靜態使用教程

點擊: 時間:2016-09-26 來源:北京家教網
一般情況下每個虛擬主機就是一個網站,網站一般通過域名進行訪問。 LNMP 1.2的網站添加過程和LNMP 1.1的基本類似,但是增加了FTP和數據庫的創建。LNMP1.2的防跨目錄也由原來在php.ini中設置移至網站根目錄下的.user.ini 進行控制。 LNMP

一般情況下每個虛擬主機就是一個網站,網站一般通過域名進行訪問。

LNMP 1.2的網站添加過程和LNMP 1.1的基本類似,但是增加了FTP和數據庫的創建。LNMP1.2的防跨目錄也由原來在php.ini中設置移至網站根目錄下的.user.ini 進行控制。

LNMP 1.1及之前的版本采用/root/vhost.sh 進行添加虛擬主機。

LNMP 1.2開始使用lnmp命令進行管理,具體可以參看更新記錄

虛擬主機管理基本命令介紹:lnmp vhost {add|list|del}

##添加網站(虛擬主機)##

如果輸入有錯誤需要刪除時,可以按住Ctrl再按Backspace鍵進行刪除。

執行:lnmp vhost add 出現如下界面:

 

 

這里要輸入要添加網站的域名,我們已添加www.vpser.net域名為例,如上圖提示后輸入域名 www.vpser.net 回車后提示

 

 

這里詢問是否添加更多域名,輸入 y 回車后添加,如不添加輸入 n 會有如下提示:

 

 

如果需要添加更多域名或加上 vpser.net ,輸入后回車確認。

(注:帶www和不帶www的是不同的域名,如需帶www和不帶的www的域名都訪問同一個網站需要同時都綁定)。

下面需要設置網站的目錄,網站目錄不存在的話會創建目錄。也可以輸入已經存在的目錄或要設置的目錄(注意如要輸入必須是全路徑即以/開頭的完整路徑!!!)。不輸入直接回車的話,采用默認目錄:/home/wwwroot/域名

 

 

偽靜態可以使URL更加簡潔也利于SEO,如程序支持并且需要設置偽靜態的話,如啟用輸入 y ,不啟用輸入 n 回車。

 

 

默認已經有了discuz、discuzx、discuzx2(Discuz X二級目錄)、wordpress、wp2(WordPress二級目錄)、typecho、typecho2(Typecho二級目錄)、sablog、emlog、dabr、phpwind、、dedecms、drupal、ecshop、shopex等常用的Nginx偽靜態配置文件,可以直接輸入名稱進行使用,如果是二級目錄則需要對應配置文件里的二級目錄的名稱。

 

 

這一步是設置日志,如啟用日志輸入 y ,不啟用輸入 n 回車。

再輸入要設置的日志的名稱,默認目錄為:/home/wwwlogs/ 默認文件名為:域名.log 回車確認后,會詢問是否添加數據庫和數據庫用戶。

 

 

如果需要啟用輸入 y ,不啟用輸入 n 回車。

需要驗證MySQL的root密碼

提示Enter database name: 后輸入要創建的數據庫名稱,要創建的數據庫用戶名會和數據庫同名,回車確認。

提示Please enter password for mysql user 數據庫名: 后輸入要設置的密碼,回車確認。

如果安裝了FTP服務器會詢問是否添加FTP賬號

 

 

如果需要添加輸入 y ,不添加輸入 n 回車。

提示Enter ftp account name: 后輸入要創建的FTP賬號名稱,回車確認。

提示Enter password for ftp account FTP賬號: 后輸入要設置的密碼,回車確認。

提示 Press any key to start create virtul host... 后,回車確認便會開始創建虛擬主機。

添加成功會提示添加的域名、目錄、偽靜態、日志、數據庫、FTP等相關信息,如下圖:

 

 

##偽靜態管理##

LNMPA或LAMP可以直接使用網站根目錄下放.htaccess 來設置偽靜態規則(具體規則可以去程序官網網站找google百度),但是在LNMP下,需要使用Nginx偽靜態規則。

偽靜態可以隨時添加或刪除,如果添加完虛擬主機后忘記或沒有添加偽靜態,可以通過修改配置文件來添加偽靜態。

虛擬主機配置文件在:/usr/local/nginx/conf/vhost/域名.conf

偽靜態規則文件需要放在/usr/local/nginx/conf/ 下面。

編輯虛擬主機配置文件,可以使用vi、nano或winscp,后2個工具對新手來說簡單些。

例如前面我們添加的虛擬主機,打開后前半部分配置會顯示如下:

 

 

在root /home/wwwroot/www.vpser.net;這一行下面添加:

include wordpress.conf;

上面的wordpress.conf為偽靜態文件,如需要其他偽靜態文件自己創建個并上傳到/usr/local/nginx/conf/ 下面并include 偽靜態.conf; 加完保存,執行:/etc/init.d/nginx restart 重啟生效,如果報錯可能是添加有誤或偽靜態規則有誤。

##上傳網站程序##

如果已經安裝FTP服務器可以直接使用ftp客戶端通過你的FTP信息登錄后上傳網站或sftp等軟件上傳網站,設置好相關權限開始安裝即可。

上傳網站后建議執行:chown www:www -R /path/to/dir 對網站目錄進行權限設置,/path/to/dir替換為你網站目錄。

為了安全可以將一些不需要PHP運行的上傳文件之類的目錄去掉執行權限,參考:http://www.vpser.net/security/lnmp-remove-nginx-php-execute.html

##列出網站(虛擬主機)##

執行:lnmp vhost list

 

 

##刪除網站(虛擬主機)##

執行:lnmp vhost del

 

 

刪除網站會先列出當前已有虛擬主機,按提示輸入要刪除的虛擬主機域名 回車確認。

這里只是刪除虛擬主機配置文件,網站文件并不會刪除需要自己刪除。

LNMP 1.2下需要執行:chattr -i /網站目錄/.user.ini 后才能刪除網站目錄。

當執行chown或chmod對網站目錄屬主屬組或權限進行操作時可能會提示chown: changing ownership of `/home/wwwroot/default/.user.ini': Operation not permitted,不需要理會,如果有強迫癥可以參考前面先進行chattr -i的操作。

##默認網站(虛擬主機)##

LNMP默認網站配置文件:/usr/local/nginx/conf/nginx.conf

LNMPA默認網站配置文件:/usr/local/nginx/conf/nginx.conf 和 /usr/local/apache/conf/extra/httpd-vhosts.conf

LAMP默認網站配置文件:/usr/local/apache/conf/extra/httpd-vhosts.conf

##其他事項##

LNMP 1.1及之前的版本使用php.ini里面,open_basedir設置

LNMP 1.2及更高版本防跨目錄功能使用.user.ini,該文件在網站根目錄下,可以修改open_basedir的值來設置限制目錄的訪問。

.user.ini文件無法直接修改,而且是隱藏文件可能在winscp下可能無法看到,建議使用vim編輯器或nano編輯器進行修改。

如要修或刪除需要先執行:chattr -i /網站目錄/.user.ini

修改完成后再執行:chattr +i /網站目錄/.user.ini

.user.ini不需要重啟一般5分鐘左右生效。

如果要更改網站目錄必須要按上述方法修改防跨目錄的設置,否則肯定報錯!!

LNMPA或LAMP 1.2上的防跨目錄的設置使用的對應apache虛擬主機配置文件里的php_admin_value open_basedir參數進行設置。如果不需要設置可以在前面加 # 進行注釋,或自行修改目錄的限制。

重啟apache生效。

##pathinfo設置##

LNMP上各個版本pathinfo各個版本的設置基本一樣:

lnmp v1.1上,修改對應虛擬主機的配置文件

去掉#include pathinfo.conf前面的#,把try_files $uri =404; 前面加上# 注釋掉。

1.2,1.3上,修改對應虛擬主機的配置文件

將include enable-php.conf;替換為include enable-php-pathinfo.conf;

修改pathinfo需要重啟nginx生效。


------分隔線----------------------------
30选5开奖查询