接受長字串POST出現500 error
open() "/var/lib/nginx/tmp/client_body/0000000001" failed (13: Permission denied) cd /var/lib chmod -R 775 nginx
centOS + nginx 存取發生 403 (非資料夾權限問題˙)
情況描述:
資料夾權限沒有問題,但卻出現403,檔案複製後就可以,error log 維permission denied
可能是SELinux造成的
getenforce 取得SELinux狀態 (有開啟為 Enforcing)
setenforce Permissive 暫時關閉(until nginx reboot)
chcon -Rt httpd_sys_content_t /path/to/www
可解決靜態檔案問題
但如果以下狀況,檔案來自/tmp (context type 可能為initrc_t) 使得 httpd 仍無法存取檔案 就可能要自己新增 selinux policy
步驟如下:
先確定有安裝 setroubleshoot (yum install setroubleshoot)
grep [initrc] audit.log | audit2allow -M [policy_name]
(這邊用grep只抓出我要真對的這條問題就好)
setmodule -i [policy_name] 啟用規則
tar 壓縮解壓縮
tar -zcf file.tar.gz targetFile/ 壓縮
tar -zxf file.tar.gz 解壓縮
參數加上v 顯示過程
排除資料夾
tar -zcf file.tar.gz targetFile/ --exclude "targetFile/excludeDir"
注意的是exclude接的路徑必須跟打包路徑同基準(絕對或相對路徑)
且folder最後不需要+ /
crontab 秒間隔
*/1 * * * * root /usr/bin/php path/to/phpfile.php
*/1 * * * * root sleep 30; /usr/bin/php path/to/phpfile.php
如此達成30秒間隔執行
取得版本資訊
uname -a 位元版本及kernel
lsb_release -a