リソースが削除できない  【解決済み】

質問全般・改善要望
返信する
nakahi
メンバー
メンバー
記事: 131
登録日時: 2010年8月04日(水) 20:23

リソースが削除できない

投稿記事 by nakahi »

-----
ご利用のサーバ:エックスサーバー
MODXのバージョン:1.0.6J-r7
PHPのバージョン:5.3
MySQLのバージョン:5.0.95
ブラウザ:FF16.02
-----

いつもお世話になっています。

リソースを、ツリー右クリックから削除しようとしたところ、一番最初は

A possible CSRF attempt was detected. No referer was provided by the server.

と、表示され削除できませんでした。

そこで編集画面から削除しようとすると、

Warning

とだけ表示されて、右編集画面は空白になります。

何処をどのように手直しすれば良いのでしょうか。
妙にいつも初歩的な質問ばかりのようで恥ずかしいのですが、いつものような明快な解決策をお願いいたします。
アバター
yama
管理人
記事: 3236
登録日時: 2009年7月29日(水) 02:50

Re: リソースが削除できない

投稿記事 by yama »

グローバル設定の「セキュリティ」タブに「管理画面操作のリファラチェック」という設定項目があって、ここで「はい」を選択していると、管理画面にアクセスしている間は常に参照元のページをチェックするようになります。普通に使っていたら管理画面内のページが参照元になるはずですが、そうではなく外部サイトのページだったりすると明らかに怪しいですよね。そういう場合に処理を遮断する仕組みになっています。実際にはこの手法は環境に左右されがちなのでうまく動作しないことも時々あるみたいです。
A possible CSRF attempt was detected. No referer was provided by the server.
似たようなメッセージが3種類ありますが、上記のメッセージだと、

コード: 全て選択

isset($_SERVER['HTTP_REFERER'])
この条件が満たされなかった場合に発動して処理を遮断します。isset・・・値が存在しないのではなく$_SERVER['HTTP_REFERER']自体が存在しないので(このへんは技術者のひとりごとみたいなものなので適当にスルーしてください)、サーバが情報をカットしている可能性があります。
念のため確認できるなら、ブラウザを他のものに試すと問題なく操作できるかもしれません。それはそれで判定としては問題があるということになりますが・・

ブラウザを変えるというのも不便なので、今のところは「管理画面操作のリファラチェック」を「いいえ」にするしかなさそうです。

・・・と思いますが、それでも症状が変わらない場合は改めて調べます

この設定を解除することでどの程度危険が増すというと、、無差別攻撃ができるタイプのトラップを作ることは難しいですし、そのトラップに遭遇する可能性もかなり低いので、開発者としては「心配する必要はないですよ」とは言えないですが、編集作業が終わったら必ずログアウトすることを習慣にするだけでだいぶ違うのではと思います。
nakahi
メンバー
メンバー
記事: 131
登録日時: 2010年8月04日(水) 20:23

Re: リソースが削除できない

投稿記事 by nakahi »

早速お返事頂きまして有難うございます。
yama さんが書きました: ブラウザを変えるというのも不便なので、今のところは「管理画面操作のリファラチェック」を「いいえ」にするしかなさそうです。
一応最初にブラウザをIE8に変えてやってみましたが出来なかったので、リファラチェック」を「いいえ」にしてやってみました。

やはり削除できずに、同じエラーが表示されます。

削除しようとしているのは、第二階層のサブリソースのあるフォルダです。
このフォルダを含む第一階層のフォルダを削除すると、第一階層以下全て削除できます。
そしてその削除できる時に当然ながらエラーは出ません。

因みに、106J-r8b2.zipにしてやってみましたが、削除できませんでした。
アバター
yama
管理人
記事: 3236
登録日時: 2009年7月29日(水) 02:50

Re: リソースが削除できない

投稿記事 by yama »

了解です、調べてみます
nakahi
メンバー
メンバー
記事: 131
登録日時: 2010年8月04日(水) 20:23

Re: リソースが削除できない

投稿記事 by nakahi »

yama さんが書きました:了解です、調べてみます
宜しくお願い致します!
nakahi
メンバー
メンバー
記事: 131
登録日時: 2010年8月04日(水) 20:23

Re: リソースが削除できない

投稿記事 by nakahi »

ちょっと作成した後放置したままの古いバージョンのサイトがあったので、同じ事をやってみました。

1.0.5J では問題なく削除、削除から復活ができます。(階層を問わず)

1.0.5J-r10 では削除できましたが、削除からの復活ができません・・・・・。削除されたままです。

何かのご参考にでもなりますでしょうか?
アバター
yama
管理人
記事: 3236
登録日時: 2009年7月29日(水) 02:50

Re: リソースが削除できない

投稿記事 by yama »

参考情報ありがとうございます。
デバッグ用の処理を埋め込んだindex.phpを添付します。これをmanager/index.phpとして上書きして、どのような情報が表示されるか教えていただけますでしょうか。(一部伏せ字でもよいです)
たぶんこの部分に関しては問題ないと思うので(問題があれば管理画面を開くこと自体できないはずなので)、情報を確認できればすぐ元に戻していただければと思います。
添付ファイル
index.zip
(5.3 KiB) ダウンロード数: 384 回
nakahi
メンバー
メンバー
記事: 131
登録日時: 2010年8月04日(水) 20:23

Re: リソースが削除できない

投稿記事 by nakahi »

yamaさん、いつも有難うございます。

アクセス出来ません。

1
http://sitename.com/manager/
http://sitename.com/

がワンセットになって、3個表示されるだけです。
アバター
yama
管理人
記事: 3236
登録日時: 2009年7月29日(水) 02:50

Re: リソースが削除できない

投稿記事 by yama »

了解です。
今思いましたが、もしかしたら他のページからリンクを張られているのが原因かも?Dreamweaverみたいに、リンク切れが発生しないようにメッセージを表示してほしいという話があった気がします。削除時に、他に何か表示されますでしょうか?
nakahi
メンバー
メンバー
記事: 131
登録日時: 2010年8月04日(水) 20:23

Re: リソースが削除できない

投稿記事 by nakahi »

yama さんが書きました:了解です。
今思いましたが、もしかしたら他のページからリンクを張られているのが原因かも?Dreamweaverみたいに、リンク切れが発生しないようにメッセージを表示してほしいという話があった気がします。削除時に、他に何か表示されますでしょうか?
重大な問題ではないと勝手な判断で書き漏らしていました。申し訳ありません。
削除する前に

Linked by ID:12
□このページによる追加のダイアログ表示を抑止する
                ok

上記の表示が出ます。

ID:12は削除しようとするリソースの親フォルダになります。

もしかすると親フォルダから外して独立させてやれば削除できる?
それなら逆にフォルダ内のソースは全て削除できない事になり、そんな馬鹿なことは
今まででもありませんから違いますよね。
アバター
yama
管理人
記事: 3236
登録日時: 2009年7月29日(水) 02:50

Re: リソースが削除できない

投稿記事 by yama »

なるほどですね。たぶんリンク元ページの本文欄に[~12~]という文字列があると思います。TinyMCEが動作していると見つからないと思うので、その場合はTinyMCEツールバー右側の「HTML」というアイコンをクリックして、HTMLのソースを確認してください。見つからなければまたご連絡を。

この部分は、他ページからリンクされていても削除する/しないを選べるようにするか、機能自体の有効無効をグローバル設定で選択できるようにするとよいかもしれませんね。
nakahi
メンバー
メンバー
記事: 131
登録日時: 2010年8月04日(水) 20:23

Re: リソースが削除できない  【解決済み】

投稿記事 by nakahi »

yama さんが書きました:なるほどですね。たぶんリンク元ページの本文欄に[~12~]という文字列があると思います。TinyMCEが動作していると見つからないと思うので、その場合はTinyMCEツールバー右側の「HTML」というアイコンをクリックして、HTMLのソースを確認してください。見つからなければまたご連絡を。

この部分は、他ページからリンクされていても削除する/しないを選べるようにするか、機能自体の有効無効をグローバル設定で選択できるようにするとよいかもしれませんね。
yamaさん、有難うございます。

リンク元ページの本文欄に[~12~]がありました。
その部分を削除すると、削除できました。

確かにリンクされていると迂闊に削除できないようにする機能は大切ですが、
行いたい時に有効無効を選択できるのは便利だと思います。
リンクされていると削除できないとは知りませんでした。また一つささやかな勉強になりました。

本当にありがとうございました。
返信する