msg# 1.1.1.1
こんにちは。はじめて。
「カスタマイジング・ズープス」を参考に奮闘している素人で、ここでの投稿もはじめてです。どうにも一人では限界があり、便乗した質問をさせていただきたく思い、よろしくお願いします。
現在、ニフティ提供のサーバ http://lacoocan.nifty.com/
にXOOPSをインストールし「どこでもコメント」を設置しようとしているのですが、カスタマイジング・ズープスのP305に書かれている、templates_cディレクトリ内のコンパイルキャッシュファイルを消すことが何より重要と書かれている部分の作業をしようとすると、キャッシュ消去画面でconfirmボタンを押しても、以下のエラーメッセージが出ます。
『 403Error Forbidden
閲覧できません。
このページへのアクセスは禁止されています
』
上記のメッセージが出るときのURLは以下のように、自分のトップページ下に.php-bin/phpという文字列が表示されます。
http://ID_coocan.jp/.php-bin/phpFTPソフトでパーミッションを確認したところ、templates_cフォルダは、読み込み・書き込み・実行すべて可にチェックが入っていました。
ニフティではXOOPSをサポートしてくれていないため、こちらに書き込みをさせてもらいましたが、解決策を考える上でなにに着目すべきか分からず困っています。
ちなみに、ADMIN TOPをクリックしても画面は何も出てきませんが、これも普通のことなのか動かが分かりません。
FTPソフトを利用してtemplates_cの中身をindex.htmlを除いてすべてクリアしても、何も変わりませんでした。
どこかで大きな考え違いをしているように思うのですが、それとも、ニフティでは使えないということなのでしょうか?
アドヴァイスをいただければ幸いです。
Votes:4
Average:7.50
msg# 1.1.1.1.1
NiftyのPHPがどういう運用なのはあいにく知りませんが、どこでもコメント以外は、問題なく動作しているんでしょうか?
どこでもコメントだけが403エラーを出すのだとすれば、PHPファイル側のパーミッションじゃないでしょうか。
commentAny/
commentAny/admin/
commentAny/admin/cache_clear.php
のパーミッションをチェックしてみてください。
他に可能性があるとすれば、commentAny のAを小文字にしてアップロードしてしまった、とか。
Votes:1
Average:10.00
msg# 1.1.1.1.1.1
GIJOEさん、アドバイスをありがとうございました。返事が遅くなってしまい申し訳ありませんでした。myAlbum-PやpiCalは普通に使えています。また、commentAny のAを小文字にしてアップロードしているということもありませんでした。
ご指摘の点について確認しましたが、パーミッションを変更しても、まだ解決しませんでした。
以下、現状と気にかかっていることを記しました。
ニフティのサーバ環境は以下のようになっており、
http://lacoocan.nifty.com/manual/ppr.htmXOOPSが使えることをうたっていますので、問題は私の側かとおもうのですが、よくわかりません。
また、パーミッションについて確認したところ、以下のようになっていました。
commentAnyおおび、Adminのパーミッション
オーナー 読み込み、書き込み、実行 すべて可
グループ 読み込み、実行は可、 書き込み可のチェックはなし
そのほか 読み込み、実行は可、 書き込み可のチェックはなし
cache_clear.phpのパーミッション
オーナー 読み込み可、書き込み可 実行可のチェックはなし
グループ 読み込み、書き込み可実行は可のチェックはなし
そのほか 読み込み、書き込み可実行は可のチェックはなし
そこで、すべてのチェック項目にチェックをつけてみましたが、やはり、エラーメッセージが出てきました。エラーメッセージは以下のものです。
エラーメッセージの実際例======
403Error Forbidden
閲覧できません。
このページへのアクセスは禁止されています。
■以下の状況が考えられます。
このページへのアクセス権がない。
このページへのアクセスが混雑している。
index.htmなど、トップページのないディレクトリへアクセスしている。
=========
「このページのアクセスが混雑している」という可能性を考えて、昼間や真夜中にも試して見ましたが、同じでした。
================
◆現在使用しているファイルのバージョンは、
exFrame(バージョン0.89)
commentAny0.13 です。
GIJOEさんのサイトにあるダウンロードできるファイルは、以下の2種類(0.13および、original)がありますが、どちらを使うのがよいかわからず、今は0.13を試していました。しかし、commentAnyのバージョンが間違っている可能性も検討してみようと思い、安定版と書かれた方をクリックしてたどっていったところ、GIJOEさんのサイトではなさそうでした。
http://prdownloads.sourceforge.jp/exmodules/11560/commentAny-0.03.zip?use_mirror=keihannaためしに、上記のサイトからダウンロードしてみたところ、フォルダ名にはcommentAny0.03と書かれているのに、XOOPSを入れているサーバにアップロードしてインストールしたところ、表示されたファイルバージョンは0.02と表示されている状況でした。このファイルで同じことを試してみても、問題は解決しませんでした。
使用しているファイルが正しいのかどうか自信がありません。
また、根本的なことですが、My Albumやニュースモジュールなど、コメントを表示したいモジュールの各ファイルのテンプレートはどこもいじっていませんが、どこもいじる必要はないのですよね?
とんでもなく無知をさらけ出しているようで恥ずかしいのですが、よろしくお願いいたします。
Votes:3
Average:3.33
msg# 1.1.1.1.1.1.1
Quote:
commentAnyおおび、Adminのパーミッション
オーナー 読み込み、書き込み、実行 すべて可
グループ 読み込み、実行は可、 書き込み可のチェックはなし
そのほか 読み込み、実行は可、 書き込み可のチェックはなし
cache_clear.phpのパーミッション
オーナー 読み込み可、書き込み可 実行可のチェックはなし
グループ 読み込み、書き込み可実行は可のチェックはなし
そのほか 読み込み、書き込み可実行は可のチェックはなし
そこで、すべてのチェック項目にチェックをつけてみましたが、やはり、エラーメッセージが出てきました。エラーメッセージは以下のものです。
とりあえず、パッと見で、
> グループ 読み込み、書き込み可実行は可のチェックはなし
> そのほか 読み込み、書き込み可実行は可のチェックはなし
ここがおかしいですね。どこで切れるのか判りづらい文章ですが、666という意味ですよね?
NiftyのPHPがCGI版(+suExec)であるとすれば、オーナー以外が書込可のファイルは実行しない、なんてチェックが入っているのが普通です。
まどろっこしいので8進表現で書きます。
特に指定がない限り、各モジュールのパーミッションは
フォルダは755
ファイルは644
です。
403エラーですから、おそらく、ファイルの中身(バージョン)がどうこうという話以前です。
とりあえずこれで解決しなかったら、一般的なPHPの話としてNiftyに質問してください。
環境の問題ですから。
Votes:1
Average:10.00
msg# 1.1.1.1.1.1.1.1
早速の返信をありがとうございました。
ニフティに問い合わせるとともに、もう少し自分でも勉強してみます。
Votes:1
Average:10.00
msg# 1.1.1.1.1.1.1.1.1
えっと、話を理解してます?
666を644にしてみました?
Votes:1
Average:10.00
msg# 1.1.1.1.1.1.1.1.1.1
失礼しました。言葉足らずでした。
指摘していただいたとおりにパーミッションを以下のように設定してから試してみましたが、状況は変わりませんでした。
commentAny/ パーミッション755
commentAny/admin/ パーミッション755
commentAny/admin/cache_clear.php パーミッション644
そこで、Niftyに問い合わせをしたところ、下記のような返事をいただき、途方にくれておりました。
『
誠に恐縮でございますが、LaCoocan は、ご利用者様の自己責任の下においてご利用いただいております。
そのため、XOOPS や関連モジュール等の設定や動作状況等につきましては、弊社でサポートいたしかねます。何卒ご了承ください
』
PHPの勉強もしたことがないまま、XOOPSを導入しようとしていたものですから、甘かったかな?と考えています。
サーバー環境は、以下のようになっているようです。
SERVER : Zeus/4.2 PHP : 4.4.4 safe_mode = register_globals = magic_quotes_gpc = 1 MySQL : 4.0.27-standard-log XOOPS : XOOPS 2.0.16a JP Theme : z_changeable_theme
どのような情報が不足しているのかすら分からないので、もう少し勉強してみようと思ったしだいです。何かさらに不足している情報や確認すべきところがありましたら、ご指摘いただければ幸いです。
Votes:3
Average:6.67
msg# 1.1.1.1.1.1.1.1.1.1.1
403エラーですから、もう少し手前の環境が必要ですね。
PHPがどういう環境で動いているか。
(実行ユーザが誰か)
PHPの実行ユーザが、本当にそのファイルにアクセスできるのか。
(途中でどこかパーミッションが切れていないか)
あと、エラーログが閲覧可能なようなら、それを見るのが一番早いでしょう。
Votes:0
Average:0.00
msg# 1.1.1.1.1.1.1.1.1.1.2
windfallさん こんにちは
GIJOEさん ご無沙汰しております
タイトルの件、同様の現象に見舞われていますので、報告いたします(解決のレスでないのが心苦しいですが…)。
サーバー環境はwindfallさんのレポと同じく@niftyのLacoocanです。
SERVER : Zeus/4.2
PHP : 4.4.4
register_globals =
MySQL : 4.0.27-standard-log
XOOPS : XOOPS 2.0.15 JP
上記環境に下記モジュールをインストールした状態で現象を確認しています。他にもインストールしているモジュールはありますが、ひととおりの動作は正常です。exFrameは今回YYBBS導入にあたって初めて導入しています。
exFrame 0.89
Xoops YYBBS 0.59
Xoops YYBBSのインストールを済ませ、管理メニューから「新しい掲示板」で掲示板を追加しようとすると、同じ現象になります(ちなみにYYBBSの「一般設定」は正常に動作します)。
「登録」のsubmitボタンのFormタグが、ローカル環境(xaio2016)とLacoocanサーバーとで、以下のように違いが生じます。
// ローカルサーバー(xaio)
<form name='bbs' id='bbs' action='/xoops/modules/yybbs/admin/bbs.php' method='POST' onsubmit='return xoopsFormValidate_bbs();'>
// リモートサーバー(nifty)
<form name='bbs' id='bbs' action='/.php-bin/php' method='POST' onsubmit='return xoopsFormValidate_bbs();'>
ローカル環境の構成(xaio2016)
SERVER : Apache/2.0.50 (Win32) mod_ssl/2.0.50 OpenSSL/0.9.7d PHP/4.3.7 mod_autoindex/color
PHP : 4.3.7
register_globals = 1
MySQL : 4.0.20a-debug-log
XOOPS : XOOPS 2.0.15 JP
なにかの手がかりになるでしょうか?
Votes:48
Average:8.54
msg# 1.1.1.1.1.1.1.1.1.1.2.1
Votes:1
Average:0.00
msg# 1.1.1.1.1.1.1.1.1.1.2.1.1
boobeeさん、こんにちは。
なるほど。403エラーで、ずっと移行先の方を疑ってましたが、action属性そのものがおかしかったんですね。
しかし、リンク先の解決策はややおかしいですね。
$_SERVER['SCRIPT_NAME'] が、'./cgi-bin/php' であることは、CGI版ならある意味正常です。
むしろ、$_SERVER['PHP_SELF'] の代わりに $_SERVER['SCRIPT_NAME'] を使っているexFrame側のミスと言えなくもありません。
かといって、$_SERVER['PHP_SELF'] って、PHPのバージョン次第では、ここにXSSを送り込めますし…(リンク先の解決法では、もっと問題は大きくなります。安全である、という前提でSCRIPT_NAMEを使っている部分があったら、いつの間にかPHP_SELFに置き換わっているのですから。)
こういう場合、actionは空欄が良いのですが、それだと単純置換ってわけにはいかないでしょうし。
Protectorを使っている、という前提で、exFrame に存在する全ての $_SERVER['SCRIPT_NAME'] を $_SERVER['PHP_SELF'] に書き換える、ってあたりが一番無難な対応でしょうか。
minahitoさんが、$_SERVER['SCRIPT_NAME'] を空欄ベースに置き換えた exFrame をリリースしてくれるのが一番ではあるのですが。
Votes:2
Average:0.00
msg# 1.1.1.1.1.1.1.1.1.1.2.1.1.1
GIJOEさん レスありがとうございます
Quote:
Protectorを使っている、という前提で、exFrame に存在する全ての $_SERVER['SCRIPT_NAME'] を $_SERVER['PHP_SELF'] に書き換える、ってあたりが一番無難な対応でしょうか。
上記方法で正常に動作することを確認しました。とりあえずはこちらの方法で対処していこうと思います。
Votes:0
Average:0.00
msg# 1.1.1.1.1.1.1.1.1.1.2.1.1.1.1
boobeeさん、GIJOEさん レスありがとうございます。
まだ、十分には問題点を把握できてはいないのですが、参考になりました。お礼申し上げます。
Votes:1
Average:10.00