PHPで現在リクエストされているURL情報は、スーパーグローバル変数 $_SERVER から取得できます。
ホスト名を取得
$http_host = $_SERVER["HTTP_HOST"]
ホスト名以降を取得
$ request_uri = $_SERVER["REQUEST_URI"];
プロトコルを判別
$protocol = ($_SERVER["HTTPS"]) ? "https://" : "http://";
プロトコルはhttpsが有効かどうか、ということしかわからないので、上記のようにします。
ただし、nginxのサーバーでは'HTTP_X_FORWARDED_PROTO'
というキーで "http" または "https" という文字列が取得できたりします。
目次
クエリ文字の取得について
リクエスト中のURLに付与されたクエリ情報については$_GETから取得できます。
例えば、//example.com/?query=hoge のアクセスページで$_GETの中身を出力させてみると、以下のような結果になります。
例:var_dump( $_GET );
の結果
array (1) {
'query' => string 'hoge'
}
コメント