• ベストアンサー

URLの不明なファイルの操作

別のサーバーで処理したファイル(例えば青空キンドルさんのPDFみたいなもの)には、その決まり切ったURLというのが存在しないものと思います。 このファイルをPHP内部で処理して外部に渡す、というのは可能でしょうか? (phpmailerの添付ファイルとして、というのを想定しています) 可能でしたらどのような関数を使って処理すればいいのか教えて下さい。

  • PHP
  • 回答数2
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

ハッシュについて http://search.yahoo.co.jp/search?p=PHP%E3%80%80%E3%83%8F%E3%83%83%E3%82%B7%E3%83%A5%E9%96%A2%E6%95%B0&aq=-1&oq=&ei=UTF-8&fr=ie8sc&n=10&x=wrt なんて探せばいい。ようは、元ネタをどれと、どれと、どれにするかばれないようにする。暗号化だね、まさに。 まあよくあるのが、ユーザー名、パスワード、など個人プロファイルを使う場合が多い。パスワードはないかもしれないが、ユーザー名は、そのサイトでユニークに成るよう管理されているからね。 さらにアクセス日時、アクセスMAC、IP、など元ねたが動的に変わる要素があることがポイント。まあ、暗号化でよくやるのが、任意のファイル5つを指定して、キーコードを作る事だ(当然中身を合わせて、ハッシュさせる)。

ageedaa
質問者

お礼

回答ありがとうございます。 ただ、(自分が初心者で理解力がないということもあり)仰ってる内容がわかりません。。。 具体的には以下のアドレスから、ダウンロードされるmobiファイルにアクセス(これを引っ張ってきてこちら側で)したい、ということになります。 http://www.gutenberg.org/ebooks/46.kindle.images

その他の回答 (1)

回答No.1

http://search.yahoo.co.jp/search?b=1&n=10&ei=UTF-8&fr=ie8sc&p=IIS+%E4%BB%AE%E6%83%B3%E3%83%95%E3%82%A9%E3%83%AB%E3%83%80%E3%83%BC http://search.yahoo.co.jp/search?p=Apache+%E4%BB%AE%E6%83%B3%E3%83%95%E3%82%A9%E3%83%AB%E3%83%80%E3%83%BC&aq=-1&oq=&ei=UTF-8&fr=ie8sc&n=10&x=wrt 動的にAPI等を使って作成すればいいだけのこと。 >可能でしたらどのような関数を使って処理すればいいのか教えて下 それぞれのAPIをインクルードするか、COM化されているので、そのままクラス指定でインスタンスを作成する。 http://msdn.microsoft.com/ja-jp/library/ms178688(v=vs.80).aspx http://homepage2.nifty.com/ann/Windows/apache/apache-virtual.html など、どちらも用意されているので、それぞれの言語から使える物をチョイスすれだけ。 なお特定のURL以下は、フォルダー作成なので、普通のパールやシェルスクリプトだけでも一意的なフォルダー(URL)は作成可能。時間が来たら、フォルダごと削除すればおしまい。 名前は、最も簡単なのが、ランダム関数(たいていどんあ言語にもあるでしょ)と日付日時分秒の組み合わせ。 これをハッシュすれば、完璧。 http://search.yahoo.co.jp/search?p=Apache+%E4%BB%AE%E6%83%B3%E3%83%95%E3%82%A9%E3%83%AB%E3%83%80%E3%83%BC+%E5%8B%95%E7%9A%84%E3%80%80PHP&aq=-1&oq=&ei=UTF-8&fr=ie8sc&n=10&x=wrt などをたぐれば、まあできるようになるでしょう。 やり方は一つではないので、いろいろ試してください。なお、仮想ディレクトリを使う場合、当然セキュアなプロトコルでないとあまり意味有りません。本来ならSSL-VPNでないと、実はばればれなんですけどね。

関連するQ&A

  • 実行ファイルのURLを自動取得

    PHPでの質問です。 実行している自ファイルのURLを自動で取得する方法は無いのでしょうか? 今現在は解らないのでSERVER関数で以下の様にして自動生成しています。 実行している自ファイルのURLを簡単取得する関数とか無いのでしょうか? 実行ファイルのURL = "http://" . $_SERVER['SERVER_NAME'] . $_SERVER['PHP_SELF'] 上記の様な感じで自動生成してたのですが、ひょんな事からバグが出て しまったので別の方法で取得出来ればと思っています。

    • ベストアンサー
    • PHP
  • URLについて

    友人の小さな会社のウェブサイトの設計を頼まれているのですが、その過程でサーバー上に様々な内部文書が保管されていることがわかりました。 そのサーバーはレンタルサーバーで、ウェブサイト開設と会社ドメインのメールのために使われています。 CSSやJSなどを置く場所に、一つのフォルダが存在し、その中に大量のデータがありました。 試しにそのURLを手入力したところ、該当ファイルをDLすることが出来てしまい、アドレスさえ分かれば外部の人間がだれでもアクセス出来る状況のようです。 そこでお聞きしたいのですが、例えば「www.example.co.jp」というURLを知っているとして、その情報だけで、内部リンクが貼られていないその他の全てのアドレス(例えば「www.example.co.jp/secret/data1」)を把握することは可能なのでしょうか?

  • メール添付ファイルの自動PDF化について

    ファイル添付されたメールに対し、受信側メールサーバーで次のような処理を考えています。 何か良いパッケージやサービスはないでしょうか? メールサーバ上に届いたメールに、ファイル(Officeなど)が添付されていた場合、 1)添付ファイルをPDF化し、別サーバ上へ格納する 2)メールから添付ファイルを削除し、メール本文にPDFファイルを参照できるURLを埋め込む 上記までをメールサーバ(または周辺サブシステム上)で自動処理したいです。 エンドユーザがPC側で参照する際は、メール本文内に埋め込まれたURLをクリックするだけでPDFファイルが開くようになるイメージです。 何か良い手段がありましたら、ぜひ教えてください。

  • PHPMailerにて添付ファイルをつけるには?

    PHPMailerにて添付ファイルをつけるにはどのようにしたらよいでしょうか? 【前提】 Zendにて開発。 Pdfファイルをblob型でDB(MySQL)に入れています。 DB上にある指定のPDFファイルをメールにて添付して、送信するサービスを追加したいと考えています。 【備考】 ・ZendのActionにてDB上のPDFファイルをダウンロード、ブラウザ上で閲覧することはできました。 ・ファイルのパス(http://www.xxx.com/article/id/1)を指定してPHP Mailerにて添付を試みても、「Could not access file:http://www.xxx.com/article/id/1」とエラーメッセージが生じます。 お手数おかけしますが、何卒よろしくお願い致します。

    • ベストアンサー
    • PHP
  • is_fileでファイルが存在していてもfalse

    is_file関数を使って、多数のファイルの有無のチェックを行おうとしています。 ところが、実際に存在していてもfalseを返してきます。 同一サーバ内、別サーバー内も試してみましたが、結果は同じでした。 当然ですが、URLの間違いなどはありません。 まったく原因が思いつきません。 よろしくお願いします。 動作環境:windowsxp,php4.3.8

    • ベストアンサー
    • PHP
  • 外部サーバーにあるファイルを読み込み処理をしたいものがあります。

    外部サーバーにあるファイルを読み込み処理をしたいものがあります。 LWP::Simpleのget関数を使って読み込む方法があるのを知りました。 でも、その外部サーバーにあるファイルを1行ずつ読み込んで処理がしたいです。 getで受け取ったデータをファイルに書き込んで処理するしか方法はないんでしょうか? 外部サーバーにあるファイルは1行が1つのデーターとなっていで、区切りが改行で仕切っています。 1回の読み込みで出来る方法がありましたら、知恵をお貸しください。よろしくお願いします。

    • ベストアンサー
    • Perl
  • 青空キンドルについて

    青空文庫の作品をキンドル3に落としたいのですが『青空文庫のZIPのURLを表示してPDFに変換しろ」とあります。ZIPを解凍するとHTMLのtxtになってしまいURLは出ません。ZIPのURLはどのようにして表示したらいいのでしょうか。何度かやったのですがZIPのURLしか受け付けないと表示されます。

  • 他サーバーにあるファイルに書き込みを行いたい。allow url fopen関連?

    いつもお世話になっております。 環境:PHP5,SQLite3 サーバA…サーバBへの書き込み処理をするPHPファイルを置く サーバB…書き込みが行われるファイルを置く(ファイルが無ければ作成される) サーバAに置いたPHPスクリプトファイルで、 サーバBに置いてあるファイル(例えばPHPファイル)に書き込み処理をする場合、 PHPやサーバソフト(Apache)の設定を、 どのようにすれば良いでしょうか。 allow url fopenなどをちょこっと調べてみたのですが、 よく分かりませんでした。 サーバA、B両方のphp.iniに対し、 何らかの設定をする必要があるのでしょうか。 それとも、片方だけで良い?! また、ファイルの書き込み権限の設定も関係してくる話だと思います。 書き込み側と、書き込まれる側の権限設定(chmod)についても、 併せて教えて頂けると助かります。 どなたか、よろしくお願いします。

    • ベストアンサー
    • PHP
  • ファイル配信用のURLを隠す

    現在サーバAからサーバBにあるPDFファイルを表示するという部分をPHPにて構築中なのですが、サーバBは自宅サーバの為ファイルパスの公開はしたくありません。 こういう場合、どのような方法が得策なのでしょうか? サーバAには転送量などの制限がある為、ユーザはサーバBより直接ファイルを閲覧・保存したいです。 PHP部分、Apache、ファイアフォールいずれかの設定についてお願いします。

    • 締切済み
    • PHP
  • PHPMailerで大きなファイルが送信できない

    PHPMailerを使用して、ファイル添付機能付きのメールフォームを作りました。 テストサーバーでは問題なく動作しておりましたが、本番サーバー(WebARENA)でテストしたところ3MB程度までの小さなファイルは問題なく送信できるのですが、それ以上大きなファイルが送信できません。 .htaccessは以下のとおりです。 php_value upload_max_filesize 20M php_value post_max_size 20M php_value memory_limit 20M phpinfoでは upload_max_filesize Local Value 20M Master Value 2M print_r($_FILES['添付ファイル']);で出力すると Array ( [name] => tst.pdf [type] => application/pdf [tmp_name] => /tmp/phpSRfZEs [error] => 0 [size] => 8182546 ) [error] => 0 ということはtmpディレクトリにアップロード自体はできているのかなと思うのですが。 getErrorMessage(); では、「Could not access file:」とだけ出力されます。 どうして送信できないのかお心当たりがある方がおられましたらどうかお助けください。

    • ベストアンサー
    • PHP

専門家に質問してみよう