[解決済み] PHPで完全なURLを取得する
2022-03-17 13:37:49
質問
私はこのコードを使って、完全なURLを取得しています。
$actual_link = 'http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF'];
問題は、私がいくつかのマスクを使って
.htaccess
そのため、URLで表示されるものが、必ずしもファイルの実際のパスとは限りません。
必要なのは、URLに書かれていること、それ以上でも以下でもない、完全なURLを取得することなのです。
サーバー上のファイルの実際のパスではなく、ウェブブラウザーのナビゲーションバーに表示される方法を取得する必要があります。
解決方法は?
をご覧ください。
$_SERVER['REQUEST_URI']
は、すなわち
$actual_link = "http://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
(なお、二重引用符で囲まれた文字列の構文は 完全に正しい )
HTTP と HTTPS の両方に対応したい場合は
$actual_link = (isset($_SERVER['HTTPS']) && $_SERVER['HTTPS'] === 'on' ? "https" : "http") . "://$_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]";
編集後記 このコードを使用すると セキュリティへの影響 . クライアントは HTTP_HOST と REQUEST_URI に任意の値を設定することができます。
関連
-
[解決済み] ブラウザによって異なるURLの最大長とは?
-
[解決済み] リモート Git リポジトリの URI (URL) を変更するには?
-
[解決済み] URI、URL、URNの違いは何ですか?
-
[解決済み] JavaScriptで現在のURLを取得する?
-
[解決済み] ページを再読み込みせずにURLを変更するにはどうすればよいですか?
-
[解決済み] JavaScriptでクエリ文字列の値を取得するにはどうすればよいですか?
-
[解決済み] JavaScriptでURLをエンコードする?
-
[解決済み] jQueryで現在のURLを取得する?
-
[解決済み】「GET」パラメータから値を取得する(JavaScript)【重複】。
-
[解決済み] リファレンス - このシンボルはPHPで何を意味するのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】接続の取得に失敗しました: php_network_getaddresses: getaddrinfo failed: 名前またはサービスが不明
-
[解決済み】「セッションキャッシュリミッターを送信できません - ヘッダーはすでに送信されています」【重複】。
-
[解決済み】PHP 7.2 - Warning: count(): パラメータは配列かCountableを実装したオブジェクトでなければならない [解決済み]
-
[解決済み】 $_SERVER['DOCUMENT_ROOT'] と $_SERVER['HTTP_HOST'] の違いについて]
-
[解決済み】 libapache2-mod-php7 パッケージが見つからない。
-
[解決済み] 警告:mysqli_fetch_array()は、パラメータ1がmysqli_resultであることを期待する、オブジェクトはで指定された。
-
[解決済み】count()パラメータは配列かlaravelのcountableを実装したオブジェクトでなければならない
-
[解決済み】phpのシンタックスエラー、予期しないT_IFエラーを修正する方法は?[クローズド]。
-
[解決済み] PHPでクエリ文字列を使用して現在のURLパスを取得する [重複]。
-
[解決済み] PHPで現在のページのURLを取得する方法 [重複]。