サポート

「不正なアクセス」でセットアップできません

ゆかり (2012/08/14 23:35)

設置URL : http://XXX/freo/

このたびさくらのレンタルサーバがPHPに対応したため、freoのセットアップにチャレンジしています。
が、どうもうまくいきません。
セットアップ画面は表示されるのですが、実行すると「不正なアクセスです」のメッセージが出ます。

・パーミッションの手動設定→ダメ
・ドメイン設定していたので通常のURLで設定→ダメ
http://freo.jp/support/view/102の対応→実行ボタン押下後、白紙ページが表示される(セットアップは完了していない)

データベース等は初期設定のままです。
何か対応方法をご存じの方がいらっしゃいましたらご教授ください。
よろしくお願いいたします。

aya (2012/08/15 13:52)

同条件の下設置しましたところ、セットアップ完了まで行き着きエラー表示も無く設置出来ました。

おそらくパーミッションがきちんと設定されていないのだと思います。
「databese」フォルダ→707
そのフォルダの中の「freo.db」→606
になっているかどうか再確認を。

ゆかり (2012/08/17 01:22)

URL : http://XXX/freo/

パーミッションを再度確認しましたが、問題ないようです。
一度フォルダごと削除し、最初からやりなおしてみましたが結果は同じです。

aya (2012/08/17 07:58)

エラー文の「no such table: freo_users」はテーブル作成が出来ていない為だと思います。なので、パーミッションの設定が一番怪しいと思ったのですが…

以下、自分が設置した環境等を記しておきます。
ほぼデフォルト状態で設置したので、どこをいじったというのはありませんがお役に立てば幸いです。

■■■

さくらのレンタルサーバ「ライトプラン」
phpのバージョン 5.2.17 [標準のPHP]を選択

freoバージョン 1.9.1
設置url http://●●●.sakura.ne.jp(初期ドメイン)/freo/

config.phpでのデータベース設定
 ↓
//データベースの種類(sqlite3 ... SQLite3 / sqlite2 ... SQLite2 / mysql ... MySQL)
define('FREO_DATABASE_TYPE', 'sqlite3');
//接続先(MySQL用)
define('FREO_DATABASE_HOST', 'mysql.example.com');
//ポート(MySQL用)
define('FREO_DATABASE_PORT', '');
//ユーザー名(MySQL用)
define('FREO_DATABASE_USER', 'example');
//パスワード(MySQL用)
define('FREO_DATABASE_PASSWORD', '1234');
//文字コード(MySQL用)
define('FREO_DATABASE_CHARSET', '');
//データベース格納ディレクトリ(SQLite用)
define('FREO_DATABASE_DIR', 'database/');
//データベース名
define('FREO_DATABASE_NAME', 'mydatabase');
//テーブル名のプレフィックス
define('FREO_DATABASE_PREFIX', 'freo_');

common.jsでの設置パス
/freo/

パーミッション
configs/ 内のファイル…606
configs/plugins/ 内のファイル…606
database/…707
database/freo.db…606
files/ 内のディレクトリ…707
files/temporaries/ 内のディレクトリ…707
templates_c/…707

ccc (2012/08/17 09:02)

URL : http://cccabinet.jpn.org/

ファイルはアスキーモードでアップロードされているのでしょうか?

また、さくらのレンタルサーバだったら、エラーログはどのように表示されているのでしょうか?

コントロールパネル→アクセスログの設定→エラーログの表示からエラーログ(本日分が保存されているはずです)を開いてみてください。該当時間のログはなにか表示されているでしょうか?
まぁ当方もそれを見たらわかるっていうレベルじゃないんですけど(^^ゞ

シブドン (2012/08/17 20:50)

失敗した時のキャッシュがサーバに残ってしまった為かも。
/freo/ではなく .../myfreo/ とか .../freo-freo/ とかで設置してみるとどうでしょう?

ゆかり (2012/08/20 22:03)

URL : http://XXX/myfreo/index.php/

皆様ありがとうございます。しかしまだ解決はできていない状態です。

ファイルはFFFTPで指定通り設定して、アップしてあります。
全部確認したわけではありませんが、phpやjsの転送時に「アスキー」と表示されているので大丈夫だと思います。

エラーログには特にそれらしきものは出ていませんでした。
違う時間に「favicon.ico」や「robots.txt」が「File does not exist」になっていましたが、関係ないのかなと思います。

フォルダの名前を変えて、再度アップしてみましたがやはり解決せず…。
データベースの設定は標準のままです。
さくらのライトではMySQLは使用不可とありましたので。

お手数をおかけして申し訳ありませんが、もう少しお知恵をいただければ幸いです。

aya (2012/08/20 22:41)

>ゆかりさん

自分は1発で成功したので、どうして設置出来ないのかちょっとわかりかねます。
同条件下での設置ですので、ゆかりさんの場合何が悪いのか…申し訳ありませんが思いつかないです。

ちなみに自分もFFFTPでのアップロードでした。
パーミッションの設定は手動でファイルマネージャーから行っています。

あと、お試しで借りたライトプランなので、freo以外には何のファイルも置いていません。アップしたのは解凍したfreoファイルのみです。

お役に立てずにごめんなさい。
無事解決されるよう祈っております。

ccc (2012/08/20 23:28)

URL : http://cccabinet.jpn.org/

>エラーログには特にそれらしきものは出ていませんでした。
う~ん500エラーとかではないようですね。

ayaさんのいうとおり、さくらのライトプランではconfig.phpの設置URLの設定だけすれば他に何の設定もせずに一応設置できるのですが...(当方も実施済み)

そこでSQLite用空のデーターベース(セットアップ済み)を作ってみたのでそれをお使いください。
http://cccabinet.jpn.org/dlrank/dlranklog.cgi?dl=database
解凍したdatabaseフォルダを差し替えていただければ結構です。

ただし、全く空というわけではなく、ユーザー登録でID=freo、パスワード=1234、メールアドレス=info@freo.jpに設定してあります。
データベースを差し替える
 ↓
ログイン画面を開いて、上記のIDとパスワードでログインする
 ↓
管理メニューの「ユーザー管理」にある「ユーザー登録を行う」から改めて自分用のユーザー登録を行う(権限は必ず「管理者」にすること)
 ↓
一旦ログアウトする
 ↓
先ほど登録したIDとパスワードでで再びログインする
 ↓
管理メニューの「ユーザー管理」からID=freoの分を削除する

でユーザー登録の変更ができると思います。

※ユーザー管理は一旦登録するとパスワードの変更はできますが、IDの変更はできません(再度登録し直す必要があります)のでご注意ください。

これでもまだなにか不具合があったら、どうなんだろう(^^ゞ

シブドン (2012/08/21 13:49)

私の提案も基本的にはcccさんと同じものです。(他のサーバではいつも成功しています。)
エラー回避参照ページ(http://z377pier.s377.xrea.com/arch_freo/xampp5.html)

・mod_rewriteなどのプラグインも使わず、別のフォルダに設置しても同じ状況
・warning(警告)も出ずsetup画面が表示されるのでパーミッションエラーではない
・実行すると「不正なアクセス」になり完了しない
以上から、別のフォルダでもダメということは...割り当てられたサーバのPHP設定に不具合があるのではないでしょうか。
>>↓サーバではなかったみたいですね。<<

ゆかり (2012/08/22 23:09)

URL : http://XXX/freo/index.php

たびたびお手数をおかけして申し訳ありません。

1.ccc様にいただいたデータベースで再度設定したところ、freo/index.php/setupにアクセスすると「管理者ページにログイン後、再度アクセスしてください。」と出るのですが、freo/index.phpにアクセスすると白紙ページが表示されます。

2.サーバが悪いのではという話がありましたので、ためしにPHP LaboのPHP Recordを設定してみようとしたのですが、こちらは
Internal Server Error
のエラーが出て、アクセスログにも「record/.htaccess: Options not allowed here」と表示されていました。

3.さくらに問い合わせたところ
・ .htaccessの「記述(Options など)」「書式」「文字コード・改行コード」 に問題がある

・ PHPに関する設定をphp.iniにせず、.htaccessに PHP_Flag や PHP_Valueなどに記述している

・ CGI・PHPのファイル・フォルダのパーミッション(705・755)等、設定に誤りがある

・ CGI・PHPプログラムが正しく動作していない
…のどれかでは?とのことです。

前々から使っていたサーバなので、aya様のように何も置いていないわけではなく、いろいろと他にフォルダはあります。
ただ、freoフォルダやrecordフォルダの階層にはhtmlファイルしかおいていません。
ちょっとあきらめぎみになってきましたが、何かお気づきの点等ありましたら教えていただけると幸いです。

ccc (2012/08/23 01:05)

URL : http://cccabinet.jpn.org/

そもそも「不正なアクセス」が出るということはワンタイムトークンが確認できてないということはわかってるんですが...

>ccc様にいただいたデータベースで再度設定したところ、freo/index.php/setupにアクセスすると...
すでにセットアップ済みなので改めてfreo/index.php/setupにアクセスする必要はなかったんですが、その状態でfreo/index.phpにしても画面が真っ白だということはトップのフォルダ(/www)に.htaccessファイルを置いているのでしょうか?
いや、.htaccessファイルにPHPに関する設定が入っていたら画面が真っ白じゃなくて500エラー(Internal Server Error)になるから違うか(>_<)

サーバーの管理画面にあるphp設定の編集で
display_errors = On
を入れて見ていただけませんか。それで動かすとPHPのエラーメッセージが表示されると思います。

そもそもphp自体が動かないのかも?
checker.phpを入れて見ていただけませんか?
http://freo.jp/setup/trouble/checker.html
それ自体も表示されないとなると、なにかおかしな設定がなされているのかもしれません。

>ためしにPHP LaboのPHP Recordを設定してみようとしたのですが...
ちなみにさくらインターネットでPHP Laboのプログラムを使うときは同梱されている.htaccessはPHPに関する設定が入っているのでそのままアップしてはいけません。
config.phpでmod_rewriteへの対応をtrueにしている場合は.htaccessを

RewriteEngine on
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule (.*)$ index.php?pathinfo=$1&%{QUERY_STRING}

だけにしてアップしてください。
その代わりphp設定の編集で
magic_quotes_gpc = Off
を入れる必要がある場合があります(実は先日ないとさんに教えてもらった(^^ゞ)。

ゆかり (2012/08/27 01:43)

URL : http://XXX/freo/checker.php

返信遅くなりまして申し訳ありません。
サーバの管理画面でdisplay_errors = Onを設定したところ、以下のようなエラーが出ました。
Warning: session_start() [function.session-start]: Cannot send session cookie - headers already sent by (output started at /XXXXX/www/freo/config.php:1) in /XXXXX/www/freo/libs/freo/common.php on line 37

checker.phpは正常に動作していると思います。
(設置URLにchecker.phpのURLを入れました)

ccc (2012/08/27 07:38)

URL : http://cccabinet.jpn.org/

ひょっとして...
freo/config.phpでURLの設定をするとき、Windows付属のメモ帳かなんかでやってませんか?
(ちなみにFFFTPの画面からファイルを開くとデフォルトではメモ帳が起動します)
本来文字コードがUTF-8N(BOMなし)であるべきところ、メモ帳でconfig.phpを編集して上書き保存すると文字コードがUTF-8(BOMあり)になってしまいます。
BOMありだと先頭に空白が入ってしまう(ソースを見てもわかりませんが)のでphpファイルがうまく動作しません。
実際にやってみたら似たようなエラーが出ました。
Warning: session_start() [function.session-start]: Cannot send session cache limiter - headers already sent (output started at /home/xxx/www/freo/config.php:1) in /home/xxx/www/freo/libs/freo/common.php on line 37

TeraPadなどUTF-8Nに対応したエディタを使用してみてください。
http://www5f.biglobe.ne.jp/~t-susumu/library/tpad.html
TeraPadならファイルを右クリック⇒TeraPadを開くからソースの編集ができます。
今お使いのconfig.phpを開いてファイル⇒文字/改行コード指定保存で文字コードを「UTF-8」から「UTF-8N」に変更して上書き保存してもOKかと思います。

ついでにFFFTPで使用するエディタを変更するには
FFFTPのオプション⇒環境設定⇒ツールからビューワーのプログラムを設定(例:notepad⇒C:\Program Files\TeraPad\TeraPad.exe)してください。

ゆかり (2012/08/30 00:26)

ありがとうございます。ご指摘通りTeraPadで解決いたしました。
ただ、index.php/setupはやはり不正なアクセスでエラーになり、いただいたdatabaseで正常に動作しました。
しばらく様子を見てみます。

本当にありがとうございました!

ccc (2012/08/30 12:33)

URL : http://cccabinet.jpn.org/

>ご指摘通りTeraPadで解決いたしました。
ゆかりさんとりあえず良かったですね。

でもロリポップ!ではconfig.phpでURLの設定をメモ帳で編集してセットアップするとエラーにならなかったからサーバーによっては可、不可があるみたいです。

返信

  • この記事に返信します。
  • 返信の際は、設置URL以外の項目は入力必須です。
投稿フォーム
名前
設置URL
本文(本文の装飾について
編集キー(投稿した記事を編集する際に使用します。)
投稿キー(スパム対策に、投稿キー を半角で入力してください。)