ホームページ > バックエンド開発 > PHPチュートリアル > この判決にはどのような意味があるのでしょうか?

この判決にはどのような意味があるのでしょうか?

WBOY
リリース: 2016-06-23 13:35:02
オリジナル
907 人が閲覧しました

if(isset($_SERVER['HTTP_X_REWRITE_URL'])){
$_SERVER['REQUEST_URI'] = $_SERVER['HTTP_X_REWRITE_URL']
$___s =explode(".",$_SERVER['REQUEST_URI']); ;
$____s =explode("?",$_SERVER['REQUEST_URI']);
$_SERVER['PATH_INFO'] = $____s[0];
$GLOBALS['is_iis'] = true;リダイレクトされた後...

ディスカッション (解決策) に返信

IIS 環境では、まず、ドメイン名のリダイレクトに $_SERVER['REQUEST_URI'] の代わりに $_SERVER["HTTP_X_REWRITE_URL" ] を使用します。 Apache環境の場合は当てはまります。

このコードを確認する目的は、異なる環境での $_SERVER['REQUEST_URI'] の値の違いを保護することです。このグローバル変数はルーティングのコードで使用される可能性があります


IIS 環境では、最初に $ を使用します。ドメイン名リダイレクト ["HTTP_X_REWRITE_URL"] の場合は $_SERVER['REQUEST_URI'] ではなく _SERVER を使用します。Apache 環境の場合はその逆です。

このコードを確認する目的は、さまざまな環境での $_SERVER['REQUEST_URI'] の値の違いを保護することです。このグローバル変数はルーティングのコードで使用される可能性があります



IIS 環境では、最初に使用します。ドメイン名リダイレクトの場合は、_SERVER["HTTP_X_REWRITE_URL"] が $_SERVER['REQUEST_URI'] を置き換えます。Apache 環境の場合はその逆です。
このコードを見ると、$_SERVER['REQUEST_URI'] の値が異なる環境で異なることを防ぐことができます。このグローバル変数はルーティングのコードで使用される可能性があります


一般的な目的は明らかですが、他にもいくつかあります。疑問がある場合は、答えてください:

1 is_iis 何ですか、印刷しましたが、結果がありません
2 HTTP_X_REWRITE_URL なぜグローバル配列に印刷できないのですか
3 $___s =explode(".",$_SERVER[' REQUEST_URI'] ); これに等しい変数が他にないため、判定には何の役割も持たないようです。
ありがとうございます

関連ラベル:
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート