PHP で記述された複数のサイトを持つ Web サーバー (Debian、Nginx) があります。セキュリティ上の理由から、Nginx 構成のようにopen_basedir
指定して、各サイトを制限しています。fastcgi_param
location ~ \.php$ {
try_files $uri =404;
fastcgi_index index.php;
fastcgi_pass unix:/var/run/php5-fpm.sock;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param PHP_VALUE "open_basedir=$document_root";
}
ただし、デフォルトの一時ディレクトリ ( upload_tmp_dir
) はopen_basedir
. 最適な解決策は、それを別のものとして追加することfastcgi_param
です:
fastcgi_param PHP_VALUE "upload_tmp_dir=$document_root/wp-content/tmp";
upload_tmp_dir
ただし、 php.iniで設定する必要があるように見えるため、これは機能しません-これは私の複数のサイトでは機能しません。
どうすればこれを解決し、まだ維持できopen_basedir
ますか?