首頁 > 後端開發 > php教程 > Nginx+php fastcgi 發生 Access Denied

Nginx+php fastcgi 發生 Access Denied

WBOY
發布: 2016-07-29 08:59:39
原創
1016 人瀏覽過

 

Nginx+php fastcgi 發生Access Denied

2014-06-10 18:10  原因分析: php官方從5.3.9開始,加入了一個配置"security.limit_extensions"(/usr/local/php/etc/php-fpm.conf),預設狀態下只允許執行副檔名為".php"的文件,造成了其他類型的文件不支援的問題。

如果你要求的 位址是  css js png這個資源 會被 php 拒絕,如果你要求的是 http://localhost/user   (隱含  http://localhost/user/index.php)也是不行的。

解決方式

1,有的人修改php的設定檔將允許的擴充功能都加上像security.limit_extensi .html .js .css .jpg .jpeg .gif .png .htm#

但是這樣其實是不好的因為靜態資源本來就不該讓php fast-cgi處理

2,(推薦)使用nginx的rewrite

location  ~ .(js|css|gif|jpg|jpeg|png)$  :/tmp;

}

location  ~ .php$ {

            root           html;

          fastcgi_index  index.php;

            fastcgi_param  SCRIPT_FILENAME  D:/tmp/$

}

location / {
            root           D:/tmp/film;
              index.php;
            fastcgi_param  SCRIPT_FILENAME  D:/tmp/film/$fastcgi_script_name;
       rewrite        ^(.*)$ $1/index.php;
}


如此可以較好解決問題第一個location過濾類型可能不夠,可以根據自己的需求添加


以上就介紹了Nginx+php fastcgi 發生 Access Denied,包括了方面的內容,希望對PHP教程有興趣的朋友有所幫助。


相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板