Top過去ログ目次掲示板

作成日:2004年03月12日 作成:おやじ
掲示板で過去に質問された内容です。

No.2808 Apache2でのユーザーディレクトリでのCGI


No.2808 投稿時間:2004年03月12日(Fri) 16:34 投稿者名:aki URL:
タイトル:Apache2でのユーザーディレクトリでのCGI

お世話になります。
以前は使えていたと思うのですが、ユーザーディレクトリでのCGIが実行できません。
ルートのCGIは普通に使えています。(普段はこちらしか使わないので)エラー内容は、
[alert] [client xxx.xx.xx.xxx] /home/xxx/public_html
/.htaccess: Invalid command 'LayoutIgnoreURI', perhaps mis-spelled or defined by
a module not included in the server configuration
とエラーログで表示されています。
httpd.confをいじった記憶もないのですが。。。
よろしくお願いします


No.2813 投稿時間:2004年03月13日(Sat) 00:15 投稿者名:おやじ URL:http://www.aconus.com/~oyaji/
タイトル:mod_layoutがLoadされていないか、UserDirで有効になっていないから?

> 以前は使えていたと思うのですが、ユーザーディレクトリでのCGIが実行できません。
> ルートのCGIは普通に使えています。(普段はこちらしか使わないので)エラー内容は、
> [alert] [client xxx.xx.xx.xxx] /home/xxx/public_html
> /.htaccess: Invalid command 'LayoutIgnoreURI', perhaps mis-spelled or defined by
> a module not included in the server configuration
> とエラーログで表示されています。
> httpd.confをいじった記憶もないのですが。。。

 こういう前後関係の記憶なんて、いいかげんなものですから無視して目の前にある事実だけ押さえればいいのではないでしょうか。

 英語は苦手ですか? .htaccessで「LayoutIgnoreURI」は無効のコマンドで、ミススペルかサーバ設定でmoduleが定義されていない、と言ってますので、前者はないので、mod_layoutがLoadされていないか、UserDirで有効になっていないからでしょう。mod_layoutそのもののことは、おやじはわかりません。


No.2820 投稿時間:2004年03月13日(Sat) 20:11 投稿者名:akifactory URL:
タイトル:半分解決?

>  こういう前後関係の記憶なんて、いいかげんなものですから無視して目の前にある事実だけ押さえればいいのではないでしょうか。

まぁ、確かにそうですね。。
>  英語は苦手ですか? .htaccessで「LayoutIgnoreURI」は無効のコマンドで、ミススペルかサーバ設定でmoduleが定義されていない、と言ってますので、前者はないので、mod_layoutがLoadされていないか、UserDirで有効になっていないからでしょう。mod_layoutそのもののことは、おやじはわかりません。

英語苦手ではありますが、mod_layoutの定義かLOADしていないというのはわかっていたのですが、mod_layout
なんぞ使うつもりも無かったというより、どういう代物かわかりませんでした。
今回、何とかCGI実行できたのは、Fedora core1のApache2のRPMはsueexecが有効です。こちらを無効化して
ユーザーディレクトリのAllowOverrideをnoneしました。これによって.htaccessが無効になり、CGI実行が
出来ました。ただ、.htaccessは使用したいので、AllowOverrideにnone以外のAllやAuthConfigを設定すると
CGIが実行できませんでした。
これを解決するには、良い知恵があったら教えてください。最悪一度再インストールも考えていますが、
サービス中のサーバーを再インストールしたくないし。。。(やって結果が同じだとショックですが(爆))
suexecについても勉強をしないといけないですね。(苦笑)


No.2821 投稿時間:2004年03月13日(Sat) 20:35 投稿者名:おやじ URL:http://www.aconus.com/~oyaji/
タイトル:Options にExecCGIを追加してますか?

> 今回、何とかCGI実行できたのは、Fedora core1のApache2のRPMはsueexecが有効です。こちらを無効化して
> ユーザーディレクトリのAllowOverrideをnoneしました。これによって.htaccessが無効になり、CGI実行が
> 出来ました。ただ、.htaccessは使用したいので、AllowOverrideにnone以外のAllやAuthConfigを設定すると
> CGIが実行できませんでした。

「CGIが実行できませんでした。」どういうエラーだったのでしょうか?
 Options にExecCGIを追加してますか?


No.2822 投稿時間:2004年03月13日(Sat) 21:21 投稿者名:akifactory URL:
タイトル:Re:こんな感じの設定です

> 「CGIが実行できませんでした。」どういうエラーだったのでしょうか?
>  Options にExecCGIを追加してますか?
はい。ちゃんとあります。エラーは、「INTERNAL SERVER ERROR」の500です。
以下は、ユーザーディレクトリの設定です。
現在は、AllowOverride noneにしてあり、suexecファイルをリネームして無効化しています。
その為、.htaccessは使用できない状態です。
<Directory /home/*/./public_html/cgi-bin/>
AllowOverride All
Options MultiViews Indexes ExecCGI SymLinksIfOwnerMatch +IncludesNoExec
<Limit GET POST OPTIONS PROPFIND>
Order allow,deny
Allow from all
</Limit>
<LimitExcept GET POST OPTIONS PROPFIND>
Order deny,allow
Deny from all
</LimitExcept>
</Directory>


No.2824 投稿時間:2004年03月13日(Sat) 23:18 投稿者名:おやじ URL:http://www.aconus.com/~oyaji/
タイトル:UserDirがおかしいですね。

> > 「CGIが実行できませんでした。」どういうエラーだったのでしょうか?
> >  Options にExecCGIを追加してますか?
> はい。ちゃんとあります。エラーは、「INTERNAL SERVER ERROR」の500です。
> 以下は、ユーザーディレクトリの設定です。
> 現在は、AllowOverride noneにしてあり、suexecファイルをリネームして無効化しています。
> その為、.htaccessは使用できない状態です。
> <Directory /home/*/./public_html/cgi-bin/>

普通は、

 Directory /home/*/public_html/cgi-bin/

ですよね。「./」なし。UserDirもこうなっているのですか?
ユーザ直下のpublic_htmlはsuEXECにも関係してきます。もともとこうなっていましたか?
後は、Tipsの3項あたりでしょうか?


No.2826 投稿時間:2004年03月14日(Sun) 00:16 投稿者名:aki URL:http://www.dragoncity.ne.jp
タイトル:うまく動きました♪ d(⌒o⌒)b♪

ご指摘どおり、
> <Directory /home/*/./public_html/cgi-bin/>
の「./」を取ってみました所、起動しました。以前RedHat6をやっていたときはこれで作動していました。
何故だろう。これが、Apache1.3とApache2の違いですかね?それとも自分がずっと勘違いしていたのかな?
HTMLディレクトリは、<Directory /home/*/public_html/>で設定してます。
後は、suexecの設定でも動く為には、設定を勉強しなくては。。
今は、suexec無効のみで正常に動いています。エラーも特に無いようです。有難うございました。m(__)m
P.S
OS再インストール免れて(^。^;)ホッ
でも、インストール時は動いていたと思っていたのに。。。。



掲示板▲頁先頭