• ベストアンサー

QUERY_STRINGについて

QUERY_STRINGについてご教授下さい。 例1:http://~/?abc 例2:http://~/abc 通常QUERY_STRINGではURLの?より後ろ部分、 例1ではabcを取得する際に使用するかと思いますが、 今回、この?を無しに例1同様に例2のURLを用いabcの取得をしたいと考えています。 参考URL(下記)のサイトについては私の考えている処理を行っているようです。 よろしくお願い致します。 参考URL: http://phot2.com/press.htm

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

  • ベストアンサー
  • shu_a
  • ベストアンサー率87% (14/16)
回答No.2

具体的な経験のがないのでお教えすることができませんが、 mod_rewrite を使って http://~/?abc で渡されたURLを http://~/abc で置き換えるという正規表現で似たような機能を実現できるかもしれません。

ka_zu57
質問者

お礼

ご教授ありがとうございます。 mod_rewriteを利用することで無事に解決できました。

その他の回答 (2)

  • sisya
  • ベストアンサー率39% (97/244)
回答No.3

#1の補足に対しての回答です。 >すみません。 >スクリプトファイル名はindex.phpでよろしいのでしょうか? ああ…やっぱり理解なさっていなかったのですね(汗 ka_zu57さんの質問にあるURL 「http://~/?abc」は .htaccessファイルでデフォルトファイル名を 「index.html」から特定のファイルに変更しています。 それが出来ない限り 上記のURLでのアクセスを実現することは不可能です。 参考URLを参照してください…

参考URL:
http://www.shtml.jp/htaccess/directoryindex.html
  • sisya
  • ベストアンサー率39% (97/244)
回答No.1

スクリプト本体のファイル名が URLにかかれていない理由は理解なさっている仮定で 説明させていただきます。 元々$_POSTなどに自動分解してくれているだけなので、 自力で文字列をもらってこればいいのではないでしょうか? 例)fooの内容が引数 if($_ENV{'REQUEST_METHOD'} == "post"){  $foo = array_shift(file("php://input")); }else{  $foo = $_SERVER["QUERY_STRING"]; }

ka_zu57
質問者

補足

すみません。 スクリプトファイル名はindex.phpでよろしいのでしょうか? ご教授頂いた方法を試してみましたがエラーになってしまいます。 サーバーにてAliasの設定も必要なのでしょうか?

関連するQ&A