• ベストアンサー

Linuxサーバーでの引数に拡張子があるものの渡し方

PHPのプログラミングで、URL形式の引数に拡張子(たとえば、.jpgなど)を持ったものを渡そうとすると、WindowsサーバなどではOKなのですが、Linuxの場合、404エラー(そのディレクトリやファイルがない)になってしまうようなのですが、Linuxサーバーでの拡張子のあるものを引数として渡したい場合、どういった書き方をすればいいのでしょうか?

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

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

  • ベストアンサー
  • nza49739
  • ベストアンサー率46% (29/62)
回答No.3

>そのディレクトリやファイルがない ということからして、パーミッションの設定がおかしいのではないかと思います。つまり、参照しようとしているファイルはあるけど、参照権・アクセス権がない状態で参照しようとしているのだと思います。 Windowsにはこのアクセス権の設定を滅多にしないので発生しませんが、LinuxなどのUnix系ではアクセス権・所有権(パーミッション)は必ず意識しなくてはなりません。今一度お確かめください。 なお、設定方法はFFFtpを利用していれば、(変更可能なユーザーであればですが)変更可能です。

その他の回答 (2)

  • yambejp
  • ベストアンサー率51% (3827/7415)
回答No.2

>URL形式の引数に拡張子(たとえば、.jpgなど)を持ったものを渡そうとする 何をしたいのかが不明確。 hoge.php?file=xxx.jpge みたいなことをしたいということですか? そうであれば、hoge.phpさえあれば404エラーはでません。 拡張子があるなしはおそらく関係ないです。 phpのソースが間違っていると考えるのが妥当でしょう

  • bm_hiro
  • ベストアンサー率51% (200/388)
回答No.1

URLエンコードすればいい。って話ではないような気がしますので、聞き流してください。 urlencode(); http://www.php.net/manual/ja/function.urlencode.php

関連するQ&A

  • imgをpngかjpgにコンバートするlinuxコマンドを教えてくださ

    imgをpngかjpgにコンバートするlinuxコマンドを教えてください。png,jpgじゃなくてもwindows環境上で見れる拡張ファイルだったらどれでもOKです。では、よろしくお願いします。

  • Linuxサーバ管理について

    趣味で数年前からサーバを管理しつつ、BlogやWebページを公開していました。 とある理由で友人からサーバを使わせて欲しいと言われ、昔から知っているのでOKを出しましたんですが、 そこでちょっと気になることがありまして、 /home/ユーザー名/web 以下にディレクトリを作りドキュメントルートにしているのですが、 例えば HTMLファイルやPHPファイルのパーミッションを604にした場合、他のユーザーからファイルの内容が見えてしまいますよね? 特にPHPファイルでDB情報等が記述されている場合は読まれてしまうと思います。 こういう場合はどうすればよろしいのでしょうか? 詳しい方がいらっしゃいましたらご教授願いたいです。

  • LinuxサーバへwindowsXPからの書き込みにつきまして

    いつも大変お世話になります。 このたびホームサーバにLinuxのDebianを使用することになりました。 このサーバにsambaをインストールしWinXpProからファイルを共有したいと 思いましたが、Linuxサーバへの書き込み、または削除などができず、ここに投稿致しました。 LinuxもWinXpも自分で所有しているものです。 Linuxサーバにてrootのほかにhoge1というアカウントを作り、そのディレクトリに WinXpから、パスワードを入力してアクセスできるようにしました。 しかし、中身のファイルの書き込みや削除などができません。たとえばファイルをドラックドロップでもって いくと以下のようなエラーメッセージが表示されます。 エラーメッセージの内容は「ディスクがいっぱいでないか、 書き込み禁止になっていないか、またはファイルが使用中でないか確認してください。」 というエラーメッセージが出てきます。」です。 そこでLinux側で共有したいディレクトリーの所有者をhoge1とし、 パーミッションをわざと777にして、WinXpを再起動して再度試みましたが、同じエラーが表示されました。 また、上記の設定のまま、WinXpからはAdministratorで操作してみましたが 同じエラーメッセエージが表示されます。 hoge.htmlをWinXpのブラウザで閲覧することはできます。 書き込みしたいファイルとは、hoge.htmlファイルです。サイズファイルは2KBあります。 ちなにみLinuxのファイルやディレクトリをWinXp端末にコピーすることはできます。 sambaのバージョンはSamba 2.2.11を使用しています。 今思いつきで書ける内容は以上です。 パソコン暦は3年くらいですが、Linuxは最近はじめたばかりの初心者です。 この質問に関しては、ネットでもいろいろと紹介されていましたが、 当てはまるものが見つかりませんでした。 質問した内容に、誤った言葉を使用しているかもしれませんが よろしくお願いいたします。

  • リナックス、拡張子

    リナックス、拡張子  いつも、回答ありがとうございます。  NEC VALUESTAR VL350/Aのパソコンで、  Linux Mint 19 Xce 32 bit のOSを使用しています。  MS-DOSやWindowsでは、 イクステンション、ファイル拡張子  が、ありますが、Linux Mint 19 Xce 32 bitでは、ありません。  テキストファイルなら .TXT ワードなら、 .DOC  などの記号です。  マックでも、ファイルの拡張子は、ありませんが、ファイルの中の属性の中に区別が、書かれていると聞いています。    UNIX系OSなどでは利用者やソフトウェアの便宜のために付けられるだけでシステム上の動作を指定するような特別な意味はない。   ●Q01. Linux Mint 19 Xce 32 bitの場合も、ファイルの中には、使用するプログラムを指定するような属性は、書かれていないのでしょうか? ●Q02. 拡張子が無いとどのような属性のファイルか分かりません。属性を知るには、ファイルを右クリック指定して属性を知ることが、できるのでしょうか? ●Q03. WINE上で、インストールしたプログラムを使用して、Windowsのファイルを開くことができますが、リナックスのファイルも、Windowsのプログラムで、正しく表示されないようになっているのですか?  リナックスでは、拡張子が無いので、どの属性のファイルかは、逐一記憶しおく必要があるのでしょうか? ●Q04. Windowsに慣れているので、拡張子がないとどのような属性を持っているファイルかが、分かりにくく使いにくいように感じますが、いかがでしょうか?   Linux Mint 19 Xce 32 bitでは、 kate と言うエディターが、一番高性能で、何でもありのように感じます。  しかし、 引用符 > の表示ができないので、不便です。  メールや、掲示板、フォーラムなどで他人の言葉の参照箇所に使用します。 ●Q05. これは、追加のプラグインのようなものを追加することで、可能になるのでしょうか? ●Q06. ソースが公開されているとのことで、誰か作っていただくことは、できないのでしょうか?  作成することが、困難な理由があるのでしょうか?  KATEでは、バグや要望を受け付ける英文の掲示板のようなものがあり、 引用符 QUOATION MARK のことが、話題に上りますが、英文であるため、回答になっているのか、なってないのかさえもわからない状況です。 ●Q07. サンダーバードのようなメールソフトを使用して、プレーンテキスト形式にして、メール文を参照するようにして貼り付けるか?  これだと、操作に手間が、かかり、重たいソフトを立ち上げることになる。 ●Q08. WINEを使用してterapadのようなWindows 用のエディターを使用するか  これだと、Linux Mint 19 Xce 32 bitの環境で、Windowsソフトのファイル環境を、使用することになるので、Linux Mint 19 Xce 32 bitの環境のファイル構成と合致しない。文字や、漢字の入力もLinux Mint 19 Xce 32 bitになじまない。 ●Q09. 携帯電話のメールのように > を手動で入れる。 ●Q10. 皆さんなら、どのようにされているのでしょうか?  参考になることで、たとえ、一つだけでも、お知りのことがありましたらよろしく教授方お願いします。 敬具

  • レンタルサーバで拡張モジュールが入っていない場合

    レンタルサーバ(PHP 4.3.10+Apache/1.3.33)で、PEARのMail_IMAPv2を使おうと思ったところ、Mail_IMAPv2が使っているPHP拡張モジュールのc-clientライブラリがサーバに入っておらず、エラーがでてしましした。 >Call to undefined function: imap_alerts() レンタルサーバ(共有タイプ)のPHP自体はこちらでいじれないすが、拡張モジュールをどこかに展開して使ったりすることはできるんでしょうか? 例えばPEARは、自分のディレクトリにアップして、パスをチマチマ変更して使っているのですが。。。 よろしくお願いします。

    • ベストアンサー
    • PHP
  • argv( 引数 )について

    こんにちは、質問させてください。 今test.phpに引数をひとつ渡します。 test.php内では、 $name = $_GET["name"]; として受けています。 test.phpは、引数がNULLの時とそうでないときで 別処理を行うようにしています。 PHP.iniファイルのエラーメッセージを表示させるように設定していて、 引数が存在しないときに以下のようなメッセージがエラーログファイルに追加されます。 Undefined index: name in c:\htdocs\test\test.php on line 12 このメッセージが表示されること自体、たいしたエラー(?!)ではありませんが、 引数がない場合、実行する度に上記のメッセージがでるのはあまり 面白くないので、表示させたくないようにしたいのですが, どのようにすればいいでしょうか? 宜しくお願い致します m(_ _)m

    • ベストアンサー
    • PHP
  • jQuery.getの引数dataで動的にするには

    お世話になります。 jQuery.get()の第二引数dataによって、動的にJSONを取得したいです。 第一引数urlがhttp://test.com 第二引数が{id:1,name:tanaka}としてgetした場合 http://text.com?id=1&name=tanaka とリクエストしてると考えてよいのでしょうか。 ある大手サイトでget()時、dataによって取得できるJSONが違うのですが、 そのURLの最後に拡張子がありません。 JSONは拡張子が無くても良いというのを知りましたが これはJSONの形式でそのように動的に発行しているのでしょうか。 もしくはサーブレットあたりが動いて動的にさせてるのでしょうか。 たぶんPHPとかではないですよね。 上の例でいくと http://text.com?id=2 http://text.com?id=5 http://text.com?id=15 これで取得できるのが違います。 どうなってるのかさっぱり判りません。 すみません、よろしくお願いいたします。

  • ウインドウズサーバーとリナックスやユニックスとの違い

    サーバーをレンタルするつもりですが ウインドウズサーバーと リナックスサーバー ユニックスサーバーの違いってあるんでしょうか? CGIとかPHPとかjavascriptなどが 使えるとか使えないとか? ご存知の方 よろしくお願いします。

  • LINUXサーバ内フォルダでの画像の回転

    こんにちは。どうにも分からないので、教えていただけませんか? sambaを使ってWindowsからLinuxサーバ内のフォルダに アクセスできるようにしました。 そこに画像(jpg)ファイルを置いて、WindowsPC(XP) からアクセスし、ファイルを右クリック→右回りに回転 (もしくは左回りに回転)とすると、以下のダイヤログが 表示され、回転ができません。 「このイメージを回転できません。ファイルが使用されている または別のプログラムで開いている、あるいはファイルまたは フォルダが読み取り専用になっている可能性があります。」 WindowsPCのローカル及び別のWindowsサーバにこの 画像ファイルを置いて試すと問題なく回転します。 疑わしいのは、LINUXサーバ内のフォルダ及び対象ファイルの パーミッションかと考え、両方とも 0777 にしました。 結果、以下のことは問題なくできます。 ・新規ファイルの作成 ・既存ファイルの編集後、上書き保存 ・既存ファイルの削除 なお、smb.confの該当フォルダの関連がありそうな設定箇所は、 下記のようになっています。 guest ok = yes public = yes writable = yes create mask = 0777 directory mask = 0777 また、メッセージにあるように「ファイルが使用されている」 「別のプログラムで開いている」「読み取り専用になっている」 というようなことはありません。 何か考えられる原因はありますでしょうか? 手がかりになるようなことでも結構ですので、教えていただけると 助かります。どうぞよろしくお願い致します。 ※Windowsでの「画像ファイルの回転」というのは、 編集+保存の処理と等価ではないのでしょうか? この点も気にかかりますが。

  • 引数のある関数と引数のない関数の設定

     お世話になっております。 PHPのプログラミングで関数をつくる際に、引数を渡す関数と引数がない関数がありますが、すでに定義済みの関数のように、引数がある場合と引数がない場合の両方を取り扱うにはどうしたらよいでしょうか? function example ($a) { if ($a == 0 || $a == '') { print '引数なし'; } else { print $a; } } のような関数で、 example(); という感じで引数を入れないと、 Warning: Missing argument … というエラーがでてしまいます。関数を example(''); と呼び出すと大丈夫なのですが。。。 プログラマーにとって基本的なことだと思うのですが、調べてもなかなか出てこないので質問させて頂きました。どなたかわかる方がいたらしたらおしえてください。 よろしくお願いします! }

    • ベストアンサー
    • PHP

専門家に質問してみよう