在conf目錄下面建立vhosts目錄,並建立網站的設定檔,這裡以examples.com.conf為例。
| 代碼如下 |
複製代碼 |
|
[root@localhost ~]# cd /usr/local/nginx/
[root@localhost nginx]# mkdir -p conf/vhosts
[root@localhost nginx]# vim conf/vhosts/examples.com.conf |
建立的examples.com.conf設定檔如下:
| 代碼如下 |
複製代碼 |
|
# 虛擬機器主機以server進行定義
server {
# 監聽的連接埠,多個連接埠之間使用空格進行間隔
listen 80;
# 用來定義訪問的ip地址或者網域名稱,多個網域名稱之間使用空格分開
server_name examples.com www.examples.com;
# 用於指定網站網頁的預設編碼格式
charset utf-8;
# 用來指定此網站的訪問日誌存放路徑,後面的main用於設定日誌的格式
#access_log logs/examples.com.access.log main;
# 用於指定網站的網頁根目錄,可以是相對路徑(相對於nginx安裝目錄),也可以是絕對路徑
#root /www/examples.com
# 用於指定訪問的預設首頁地址
#index index.html index.php
# 用來指定網站預設訪問的設定,裡面的root和index用法和效果與上面是一樣的
# 兩種方式使用任何一種都是可以的,這裡採用 location / {} 的方式
location / {
root /www/examples.com;
index index.html index.php;
}
# 使用error_page指令設定各種錯誤資訊的返回頁面
# 錯誤資訊的返回頁面大小如果低於512k則會被ie瀏覽器替換為ie預設的錯誤頁面
#error_page 404 /404.html;
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
# nginx的location指令用於設定url地址匹配,支援Regex匹配,也支援條件判斷匹配。
# 可以通過location指令實現nginx對動態、靜態網頁的過濾處理。
# 下面是對所有的圖片設定緩衝30天
location ~ .*.(gif|jpg|jpeg|png|bmp|swf)$ {
expires 30d;
}
# 對js和css檔案快取1小時
location ~ .*.(js|css)$ {
expires 1h;
}
# 下面是列出了兩種解析php的方式:
# 第一種是簡單的將所有以php結尾的請求都交給原生8080連接埠進行處理
#location ~ .php$ {
# proxy_pass http://127.0.0.1:8080;
#}
# 第二種是將php的請求交給FastCGI進程監聽的ip地址及連接埠,這裡轉寄給PHP_FPM
location ~ .php$ {
# 設定用於解析php的根目錄,通常為網站根目錄
root /www/examples.com;
# 地址和連接埠與php_fpm中設定的一致
fastcgi_pass 127.0.0.1:9000;
# 預設首頁
fastcgi_index index.php;
# 指定防止php動態程式的主目錄,也就是$fastcgi_script_name前面指定的路徑,建議與網站根目錄一致或直接使用$document_root
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
include fastcgi_params;
}
# 防止直接存取 .htaccess 檔案,建議開啟
location ~ /.ht {
deny all;
}
} |
最後建立網站的根目錄並設定目錄許可權:
| 代碼如下 |
複製代碼 |
|
[root@localhost ~]# mkdir -p /www/examples.com
# 寫入許可權
[root@localhost ~]# chmod +w /www/examples.com
[root@localhost ~]# chown -R www:www /www/examples.com
# 建立一個測試的php檔案
[root@localhost ~]# echo "<? phpinfo(); ?>" >> /www/examples.com/phpinfo.php |
這個時候啟動php-fpm和nginx之後,應該可以直接存取http://www.examples.com/phpinfo.php了。