本ページは広告が含まれています。気になる広告をクリック頂けますと、サーバ運営費になります(^^
html内にphpスクリプトを埋め込み拡張子は.htmlで動かしたい。
nginxでの書き方
/etc/nginx/nginx.conf
location /live/ { auth_basic "Hanako Bassic Test"; auth_basic_user_file "/usr/local/nginx/passwd/.htpasswd"; location ~ \.(php/html)$ { fastcgi_pass unix:/var/run/php/php7.0-fpm.sock; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; }
これだけだと
http://hanako.hoge.jp/live/rtmp.html(phpスクリプト入り)
Access denied.
と表示されてスクリプトが動かないどころか、Access deniedの表示が出る。
ログにはこのような記録が残る
2016/11/12 14:42:08 [error] 19941#0: *13 FastCGI sent in stderr: "Access to the script '/usr/local/nginx/html/live/rtmp.html' has been denied (see security.limit_extensions)" while reading response header from upstream, client: 5.33.0.232, server: localhost, request: "GET /live/rtmp.html HTTP/1.1", upstream: "fastcgi://unix:/var/run/php/php7.0-fpm.sock:", host: "hanako.hoge.jp"
〇/etc/php/7.0/fpm/pool.d$ sudo vi www.conf
security.limit_extensions = .php .php3 .php4 .php5 .php7 .html
sudo /etc/init.d/php7.0-fpm reload [ ok ] Reloading php7.0-fpm configuration (via systemctl): php7.0-fpm.service.
とする事でhtmlファイル内に埋め込まれているphpスクリプトが動作するようになる。
※basic authが効かなくなっていた。原因はまだつかめず 2016/11/12