#環境
- WEBサーバー: Apache2
- OS : Ubuntu
cgiモジュールのインストール
cgidインストール
$ sudo apt install cgid
cgi設定の確認
$ cd /etc/apache2/conf-available
$ ls
#serve-cgi-bin.confに設定が書いてある
harset.conf localized-error-pages.conf other-vhosts-access-log.conf security.conf serve-cgi-bin.conf
serve-cgi-bin.conf
<IfModule mod_alias.c>
<IfModule mod_cgi.c>
Define ENABLE_USR_LIB_CGI_BIN
</IfModule>
<IfModule mod_cgid.c>
Define ENABLE_USR_LIB_CGI_BIN
</IfModule>
<IfDefine ENABLE_USR_LIB_CGI_BIN>
#URLで/cgi-bin/以下のファイルが/usr/lib/cgi-bin配下のファイルと結びつく
ScriptAlias /cgi-bin/ "/usr/lib/cgi-bin/"
<Directory "/usr/lib/cgi-bin">
AllowOverride None
#+ExecCGIがオプションとして書かれているのでCGIが動く
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
Require all granted
#.cgiの拡張子がつくファイルがcgiスクリプトが書かれているファイルであることを設定
AddHandler cgi-script .cgi
</Directory>
</IfDefine>
</IfModule>
# vim: syntax=apache ts=4 sw=4 sts=4 sr noet
#cgiファイルを設置
$ cd /usr/lib/cgi-bin
$ vi hello.cgi
hello.cgi
#!/bin/bash
echo "Content-Type: text/html;charset=utf-8\n"
echo ""
echo '<html><body>Hello cgi.</body></html>'
ファイルのパーミッションにて実行権限をつける
$ sudo chmod 755 hello.cgi
#確認
http://example.com/cgi-bin/hello.cgi