在系統(tǒng)中為nginx配置了umask為002,可為什麼web上用php取得umask值變成了022呢?哪裡可設(shè)定的嗎?麻煩知道的朋友指導(dǎo)下,謝謝!
備註:為對應(yīng)的nginx用戶設(shè)定了umask為002,在伺服器裡頭切換到nginx用戶直接touch或mkdir建立的檔案與資料夾權(quán)限都是正確的,但透過web的php腳本創(chuàng)建就有問題,查看了下umask,變成了022,問題應(yīng)該就出在這(這條分析中關(guān)於nginx的都是有問題無意義的)
#新增:目前已經(jīng)將全域的umask配置成002了,Web中對應(yīng)的使用者(這個web對應(yīng)的使用者是我在/etc/php-fpm.conf中設(shè)定的使用者)也進(jìn)行了設(shè)定並且在伺服器中直接touch或mkdir所建立的檔案與資料夾權(quán)限都是正確的
查到了這麼一個有點(diǎn)相關(guān)的資料,但係統(tǒng)中/etc/init/下沒有php5-fpm.conf這個文件,加在/etc/nginx/php5-conf中提示umask不識別,直接在/rtc /init/下創(chuàng)建該文件,把這個主題裡的文本修改對應(yīng)的參數(shù)加入其中也無效(http://stackoverflow.com/questions/21248904/how-to-trace-where-php5-fpm-umask-settings -are-coming-from-on-ubuntu)
最後以 system user
身分向系統(tǒng)發(fā)起呼叫的的 php-fpm 。而不是 nginx 。修改nginx配置沒有作用的。
/etc/php-fpm的安裝發(fā)生不同,那麼設(shè)定檔的位置也不一樣的。你需要自己找到php-fpm的設(shè)定檔。
可以透過產(chǎn)看 php-fpm 進(jìn)程狀態(tài),來查看設(shè)定檔
ps aux | grep php-fpm
就可以看出 php-fpm 目前所使用的設(shè)定檔。
你隨便建立一個設(shè)定文件,並不會被程式讀取生效。
弄清楚這些再試試吧。祝你好運(yùn)。
廢一句話,如今像 七牛
, 又拍
, 亞馬遜S3
這些很好用的儲存雲(yún),為什麼還要自己往伺服器上傳檔案呢?
(小公司或個人在靜態(tài)資源管理上還在自己用低劣的辦法,那實(shí)在是跟不上時代的腳步了)
當(dāng)人 第三方 雲(yún)端儲存也不是 盡善盡美,適合所有用戶群,但是對於個人或中小團(tuán)體。非常值得試用。