ソフトウェアエンジニア現役続行

雑多なことを綴ります

ApacheでユーザごとのhtmlとCGIを公開させる

CGIをnobodyで実行するのではなくユーザー権限で実行したいときがあります。そのときは次のようにします。

/etc/httpd/conf/httpd.confを編集する

次のようにUserDirを定義します。

#UserDir disabled (←コメントアウト)
UserDir public_html (←コメントアウトを外す)

以下がコメントアウトされているので、コメントアウトを外す。


  AllowOverride FileInfo AuthConfig Limit
  Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
  
    Order allow,deny
    Allow from all
  
  
    Order deny,allow
    Deny from all
  

次の行を追加することで、CGIを利用可能にする。


  Options ExecCGI

ブラウザからのアクセス方法

http://[サーバーのURL]/~Oswald/index.html ( ← /home/Oswald/public_html /index.htmlにアクセスする)
http://[サーバーのURL]/~Oswald/cgi-bin/hoge.cgi ( ← /home/Oswald/public_html/cgi-bin/hoge.cgiにアクセスする)