質問: Twitterではユーザーそれぞれのページを https://twitter.com/******** というように表示させますが、 私の知識ではユーザーそれぞれのページを url/?id=******** のようにgetメソッドを活用する方法しか思いつきません。 どのようにすれば、twitterのような表示ができるのでしょうか?
回答: 質問タイトルが少し変ですね。GETメソッドは使うが、クエリ文字列(?以降のパラメータ)は使わないという意味ですね。 それを使うには、PATH_INFOというものを使います。基本的な使い方は下記の通りです。 http://example.jp/index.php/abc 上記の呼び出しをした場合、/index.phpが呼び出され、$_SERVER['PATH_INFO'] に /abc がセットされます。 これでよければそのまま使えばよいのですが、URL上の index.phpを省きたいというケースもあります。その場合は、mod_rewriteを使います。 下記は、WordPress等で使われるmod_rewriteのルールですが、 ``` RewriteEngine On RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule . /index.php [L] ``` httpd.conf でmod_rewriteとAllowOverrideを有効にして、上記を .htaccessに記述すると、 http://example.jp/abc で index.phpが呼び出されます。この場合は、$_SERVER['REQUEST_URI'] にパラメータ /abc が格納されます。