サーバー環境というより、インデックスドキュメントの設定だけです。
通常、例えば index.html index.php がインデックスのドキュメントだとしたら、そのファイルに対してはファイル名を使用せずともゲットパラメータのみでアクセス出来ます。
もし簡単に作りたいのであればCGIでGETで環境変数を持ってきて、locationでジャンプさせればどうですか?CGIさえ動くところであればOKですよ
ありがとうございます!
http://www.nurs.or.jp/~sug/homep/logging/log2.htm
ロギングあの手この手「対応すべきリクエスト」
わたしもWebサーバーソフトを作ったことがあるのですが
URL=ファイル名と考えるのがちょっと違います
HTMLのリクエストをすると、例えばこのページの場合URLは
http://www.hatena.ne.jp/1092492831
このサイトもそうですが、URLのとこにファイル名がかかれず直接”/?uid=111”といった形で記述されています。このような書き方ができるwebサーバ環境と、できればそれらが.. - 人力検索はてな
ですが
リクエストの形式は
GET /1092492831 HTTP/1.0 User-Agent:NetSpelunker/0.9
のようになるので、GET以降の文字列をサーバ側ソフトで解釈してやるようになります
通常のCGIのパラメータ変数などでは ”?”以降をパラメータと判断していますが、プログラムによっては ”?”では無くその数字を直接パラメータとして処理したりすることがいくらでも可能なのです。
私の造ったソフトの場合は
http://サーバ名/コマンド名/12桁の数字
である特定の日時のデータを取り出すという形式でファイル名ではなく、データを直接解釈してデータベースにアクセスするというものでした
勿論URLをファイル構造として解釈してそのOSのAPIに渡してやることも出来ますが
その場合は”?”をデミリタ文字として解釈して前半をフォルダ構成、
後半をパラメータ変数として処理するわけです
一番いいのはHTTPリクエストについて勉強することでしょうか?
どういう値をサーバ側でかえせばいいかが分かれば、サーバソフトが簡単に作れるようになります
ありがとうございます!
なんとなく分かってきました。
Web サーバとして Apache を利用していることを前提にしますが、/?uid=... というような形での CGI へのアクセスを成立させるには、httpd.conf や .htaccess 等で DirectoryIndex に index.cgi 等のファイル名を追加すれば良いです。
なお、?uid= の部分も省略したければ、mod_rewrite を使うことになります。詳しくは3番目に挙げたページを参照ください。
http://httpd.apache.org/docs-2.0/ja/mod/mod_dir.html
mod_dir - Apache HTTP サーバ
http://www.hatena.ne.jp/1092024743
はてなや2chのシステムの仕組み。 はてなや2chはhttp://www.hatena.ne.jp/xxxxxxx という具合に各ページごとドメインの後にランダムな数字の羅列がありますが、 システム内.. - 人力検索はてな
ありがとうございます!
ありがとうございます。
それだけのことなんですね。