
Ubuntu日本語フォーラム

ログインしていません。
Ubuntu7.04にApache2とperlをインストールし、ユーザディレクトリの権限を777、cgiプログラムは755に設定していますがyou don't have permission・・(403のエラーが返されます)。Windowsのapatch環境で動いていたものを移植してテストしています。
オフライン
※規約違反により追放されたユーザの投稿は、ログインユーザにのみ表示されます。
オフライン
CMasami さん 早速のアドバイスありがとうございます。
Apache、Perlが正常にインストールされていないためpermissionのエラーが表示されていると思います。
perlのスクリプトエラーはありません。マニュアル本に書いてあったApatcheへのオプション(ExecCGI)は登録済です。
全ての.CGIスクリプトに対するエラーでerror.logには403エラー以外の特別なエラーメッセージは表示されていません。
UBUNTUの初心者で不足ファイルやフォルダ、権利などをどのようにチェックすべきかわかっていません。
できれば詳細にアドバイスを頂ければ幸いです。
オフライン
>Apache2とperlをインストールし、ユーザディレクトリの権限を777
間違っていいたら、何方か訂正をお願いします。
*ユーザディレクトリを公開する場合は、公開ディレクトリまでの実行権をothersに与え、
chmod o+x /home/$USER
chmod o+x /home/$USER/public_html
Apache2の実行ユーザが、公開ディレクトリまで辿り着ける様にする。
*httpd.confをしかるべく設定。
*ディレクトリやファイルの権限を777等のように、与えすぎるとエラーになる
(セキュリティー違反、 775 もしくは 755 までしか許可されてなかった様な気がする?)。
*何かを参考にして設定したなら、それを参照するのは止めた方が良い。
*Ubuntuには、AppArmorというセキュリティーシステムが入ったそうです。
公開するなら、これを On にして使うことも考えた方が良いかもしれない。
オフライン
これを試してみれば環境が整ってるかどーか分かるカモです。
https://wiki.ubuntulinux.jp/UbuntuTips/Server/ApacheServer
オフライン
RxOrcaさん ありがとうございます。
wifky!のページは表示されました。(環境が整っているということですね)
しかし、自分のperlスクリプトは相変わらずpermissionエラーが表示されます。
ファイルの権限は755、705、700といろいろ変えてみましたが効果なしです。
オフライン
ユーザーディレクトリ以下の cgi-bin (public_html/cgi-bin/) で動かしたいのなら, (例えば) mods-enabled/userdir.conf を変更するとよいカモです。
でもこれが付いてないからって permissionエラーにはならないと思う …
<IfModule mod_userdir.c>
UserDir public_html
UserDir disabled root
<Directory /home/*/public_html>
AllowOverride FileInfo AuthConfig Limit
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
</Directory>
# これ以降追加部分
<Directory /home/*/public_html/cgi-bin/>
Options ExecCGI
SetHandler cgi-script
</Directory>
</IfModule>オフライン
公開ユーザディレクトリ上の html は、きちんと表示されますか?
表示されるなら、cgi の設定(httpd.confや.htaccess)の問題か、
perlスクリプト(行末コード)の問題(これは、Ubuntu上で書いたCGIを実行してみれば、すぐ分かる)。
オフライン