![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?c9bd177)
http://phpspot.net/php/pgPHP%E3%81%A7Yahoo!API%E …
上記URLに掲載されているAPIサンプル(yapi.zip)を使っているのですが、
cache ディレクトリに検索されたファイルが蓄積されサーバー容量を圧迫して困っています。
そこで、このcache機能をオフにしたいのですが、
zipファイル内のweb.phpのどの部分を修正すればよいのでしょうか?
よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
#1です
52行目の fputsをコメントアウトしてみたらうまくいかないですかね?
昨日と同じ状態なので試してはいません。
間違ってたらごめんなさい。
> また、セキュリティリスクをご指摘いただけ非常にありがたいのですが、
> 私自身もこんな質問をしているレベルのPHP初心者なため、
> 多少のリスクは承知でこのソースを元に改造を進めたいと考えております。
えーと・・・
正直あなた(が利用しているサーバー)だけの問題ではないです。
個人で自宅なりで運用しているサーバーですか?
もしくは実機単位でレンタルしているサーバーですか?
このままの状態だとサーバーになんかしらの悪意のあるコードを埋め込む事ができます。
サーバー自体に無限ループするコードでも埋め込めば、ダウンさせる事も出来るかもしれません。
ご利用のサーバーに対してではなく、あなたのサイトにアクセスしたユーザーに対して、意図しないURLい飛ばす事もできます。
なにかしらの攻撃を受けたときに被害に合うのはあなただけではないという事です。
不特定多数の利用者、またはその周りの人間に対して迷惑をかける事になりかねません。
私はセキュリティに関するプロです。と自信を持って言えるわけではありません。
一般的なそこら辺にいるプログラマです。
ですがあなたのサイトを見つけたら1時間もしないうちに悪意のあるコードをばらまくサイトに出来ると思います。
残念ながら、それくらい穴のあるコードです。少し知識があればすぐにわかります。
なのでプログラムを使うなら、ある程度は読み解けるくらいの勉強をしてください。
あと無償のものにはそれなりに気を使ってください。
グダグダとすみません・・・
回答ありがとうございます、お礼が遅くなって申し訳ありません。
//$fp = fopen($cachename,"w");
//fputs($fp,$xml_str);
//fclose($fp);
↑の3行をコメントアウトしたところ、キャッシュフォルダにキャッシュ画像が溜まらず
検索が行えるようになりました。
No.1
- 回答日時:
DLしてみました。
が、試してません。
ソースの中の数少ないコメントにキャッシュ時間の設定がありますが、そこを変えてもだめなんですか?
47行目
と思ったけど・・・
これだと、ファイル増え続けますよね。
普通にバグだと思います。
「サーバーにキャッシュとして置いといたファイルが1時間以内であればキャッシュから取得する」という意味合いだと思いますが、ソースにはファイルの削除が無いようですね。
ざっとソース見た感想ですが・・・
このまま公開するのはやめた方がよいですね。穴が多いです。
最近PHP始めました! って感じの人のソースを見た気分です。
readmeにcacheディレクトリは777でって書いてます。
公開ディレクトリで? ありえません・・・
$_GET["q"]をそのままHTMLのinput要素に描画させています。
javascript埋め込まれたら・・・
ぱっと見ですぐに見つけたものです。
たぶんまだあるんだろうなと感じます(勝手な感覚です)
というワケでお勧めはしません。
結局回答になってなくてすみません。
とりあえずHDD喰われて困ってるのであればcronで定期的に削除でもしたらいかがでしょう?
使い続けるのであれば、くれぐれも踏み台等にされない事を祈ります。
ご回答ありがとうございます!
ご回答いただいた通り、キャッシュ時間をいじるだけでは意味がないため
そもそもキャッシュをしないような仕様にしたいのですが、お調べいただき幸いです。
また、セキュリティリスクをご指摘いただけ非常にありがたいのですが、
私自身もこんな質問をしているレベルのPHP初心者なため、
多少のリスクは承知でこのソースを元に改造を進めたいと考えております。
引き続き回答のほうは募集させていただきたいと思います。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) VBAでのフルパスの取得 1 2022/09/20 22:51
- その他(プログラミング・Web制作) TwitterAPIを使用せずに自動ツイートする方法を知りたい。考え方としてはブラウザを擬似操作して 2 2023/02/02 17:16
- iPod・ウォークマン・音楽プレーヤー インターネットに接続できるAndroid OS版のmp4プレーヤーを買おうと思っています。 6 2022/05/28 22:10
- Windows 10 プロファイルエラーについて 2 2022/12/16 09:31
- マウス・キーボード Pc切替器が動作しません。理教えてください。よろしくお願いします。 4 2023/05/10 15:43
- その他(パソコン・スマホ・電化製品) Google ドライブのようにXnBay ストレージ サーバのストレージスペースをコンピュータのエク 2 2023/04/28 19:09
- iPhone(アイフォーン) こちらWEB検索できるかが分かりません それからこちらの最安値があれば教えてください https:/ 2 2022/09/14 14:09
- サバイバルゲーム このタイプの差し込み口ってなんの種類か分かりますか? 3 2022/07/29 15:32
- ZOZOTOWN このタイプの差し込み口ってなんの種類か分かりますか? 2 2022/07/29 15:31
- Amazon 同じAmazonなのに同じ製品の値段が違うのはなぜ!? 5 2022/04/04 00:52
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Subversionのリポジトリの削除
-
ファイル一覧表(LAN内の別PC)
-
MkDir関数
-
コマンドプロンプトを指定のデ...
-
ディレクトリの正規表現について
-
CFileDialogの最初のディレクト...
-
ツリーメニューを縮小させたい
-
JAVA内で複数のファイルを削除...
-
fopenでファイルが開かない場合...
-
テキストファイルに書き込む
-
拡張子を隠すのは良い事なので...
-
C言語でのディレクトリ作成につ...
-
currentディレクトリ内で、任意...
-
aspのページが表示できません
-
VB.NET 最下位のディレクトリ名...
-
ファイルアップロードに関して...
-
フォントの色を変えるには?
-
pearのMailライブラリがうまく...
-
PHPで新しいウインドウで開く命...
-
phpファイルの編集について
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
FTPコマンドでディレクトリごと...
-
CFileDialogの最初のディレクト...
-
バッチを用いたフォルダの自動移動
-
現在位置より2つ上のディレク...
-
fopenでファイルが開かない場合...
-
visualstudioでc#のdllができない
-
Subversionのリポジトリの削除
-
絶対パス?絶対アドレス?意味...
-
makefile でファイルをコピーす...
-
ファイル選択ダイアログで選択...
-
rmdirでフォルダが消せません
-
ファイルアップロードに関して...
-
【PHP】declare命令で”Fatal er...
-
[ ディレクトリ '.' は書き込み...
-
aspのページが表示できません
-
VB.NET 最下位のディレクトリ名...
-
glob関数で日本語文字が取得で...
-
図に示す階層構造で,現在のデ...
-
includeが出来ない訳とは?
-
環境変数をMakefile内で有効に...
おすすめ情報