今天一個網友叫我幫他在個人vps上配置nginx虛擬機時,發現我更改虛擬機的根路徑後,nginx只會執行,nginx默認的配置的根目錄下的index.php,可是index.html的,卻能夠執行,以爲怪怪的,一時找不到方向怎麼搞了,只好查看官方文檔,php
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
|
如今咱們來看在一個典型的,簡單的PHP站點中,nginx怎樣爲一個請求選擇location來處理:
server {
listen 80;
server_name example.org www.example.org;
root
/data/www
;
location / {
index index.html index.php;
}
location ~* \.(gif|jpg|png)$ {
expires 30d;
}
location ~ \.php$ {
fastcgi_pass localhost:9000;
fastcgi_param SCRIPT_FILENAME
$document_root$fastcgi_script_name;
include fastcgi_params;
}
}
|
這是官方的文檔,而個人錯誤就使用location 匹配php文件的那個位置的根目錄沒有更改過來,致使找不到文件,file not foundhtml
之後配置須要注意一下一點:nginx
1:把root 寫在server下,不要寫在location下,spa
2:把location下的root 刪除code