Nginx : CGI スクリプトを利用する2024/02/13 |
Nginx で CGI が実行可能なように設定します。
|
|
[1] | FastCGI Wrap をインストールして Nginx に設定します。 |
root@www:~ #
pkg install -y fcgiwrap
root@www:~ #
vi /usr/local/etc/nginx/nginx.conf # [server] セクション内に追記 # 例として [/cgi-bin] 配下は CGI を有効にする
server {
.....
.....
location /cgi-bin/ {
gzip off;
root /usr/local/www;
fastcgi_pass unix:/var/run/fcgiwrap/fcgiwrap.sock;
include /usr/local/etc/nginx/fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
root@www:~ #
root@www:~ # mkdir /usr/local/www/cgi-bin root@www:~ # chmod 755 /var/www/cgi-bin root@www:~ # service nginx reload
sysrc fcgiwrap_enable="YES" root@www:~ # sysrc fcgiwrap_user="www" root@www:~ # sysrc fcgiwrap_group="www" root@www:~ # sysrc fcgiwrap_socket_owner="www" root@www:~ # sysrc fcgiwrap_socket_group="www" root@www:~ # service fcgiwrap start Starting fcgiwrap. |
[2] | 設定したディレクトリ (当例では [/usr/local/www/cgi-bin]) 配下で、任意の言語で CGI テストページ (下例は Python3 スクリプト) を作成して動作確認をします。正常にページが表示されれば OK です。 |
root@www:~ #
vi /usr/local/www/cgi-bin/index.cgi #!/usr/local/bin/python3.9 print("Content-type: text/html\n") print("<html>\n<body>") print("<div style=\"width: 100%; font-size: 40px; font-weight: bold; text-align: center;\">") print("CGI Script Test Page") print("</div>") print("</body>\n</html>") chmod 705 /usr/local/www/cgi-bin/index.cgi |
Sponsored Link |