ホームページ > バックエンド開発 > PHPチュートリアル > Rewrite モジュールが PHP からサポートされているかどうかを確認する $_SERVER 関連のパラメーター_PHP チュートリアル

Rewrite モジュールが PHP からサポートされているかどうかを確認する $_SERVER 関連のパラメーター_PHP チュートリアル

WBOY
リリース: 2016-07-21 16:12:55
オリジナル
1198 人が閲覧しました

http://www.jb51.net/p1141.html の形式の URL であれば、$_SERVER['REQUEST_URI'] と $_SERVER[' の値の違いによって解析できます。最も重要なことは、ページが重複して渡されるかどうかです。方向によって $_SERVER['REDIRECT_QUERY_STRING'] と $_SERVER['REDIRECT_URL'] という 2 つのパラメーターが生成されるため、ページが重複しているかどうかを判断するのは非常に簡単です。この 2 つの値の存在を判断するだけで済みますが、これは Apache 環境でのみ有効です。

ISAPI Rewrite環境かどうかを判断するには?

ISAPI Rewrite環境の場合、上記の2つのパラメータ$_SERVER['REDIRECT_QUERY_STRING']と$_SERVER['REDIRECT_URL']は生成されませんが、独自の固有パラメータ$_SERVER['HTTP_X_REWRITE_URL']も生成されます。 ]、このパラメータは ISAPI 環境でのみ生成されるため、このパラメータを使用して現在の URL の形式を決定できます。メソッドは次のとおりです。

コードをコピーします。 コードは次のとおりです。
$isApi = (isset($ _SERVER['HTTP_X_REWRITE_URL']) && strpos($_SERVER['HTTP_X_REWRITE_URL'],'?')) TRUE : FALSE;


現在の URL 表示フォームを判断することで、プログラムがどのように実行されるか、および 301 リダイレクトが必要かどうかを知ることができます。現在の URL が http://www.jb51.net/?=p1141 の場合は、http://www.jb51 への 301 リダイレクトを使用する必要があります。 net/p1141.html、次のように:


コードをコピーします コードは次のとおりです:
header("HTTP/1.1 301 Moved Permanently");
header("Location:http:// www.jb51.net/p1141.html");


次に、リダイレクト後のプログラムのプロセスを実行します。これにより、ページの統一性が確保され、ISAPI と Apache の Rewrite ループ リダイレクトの問題も解決されます。

ISAPIとApacheがリダイレクトされているかどうかを判断します:

ISAPIの使用方法:


コードをコピー コードは次のとおりです:
$_SERVER['HTTP_X_REWRITE_URL']


Apacheの使用法:


コードをコピー コードは次のとおりです:
$_SERVER['REDIRECT_QUERY_STRING'] または $_SERVER['REDIRECT_URL']


$_SERVER の各パラメーターの使用法をマスターしていれば、次のことが可能です。 ISAPI と Apache の Rewrite ループ リダイレクトの問題を簡単に解決します。

http://www.bkjia.com/PHPjc/313568.htmlwww.bkjia.comtru​​ehttp://www.bkjia.com/PHPjc/313568.html技術記事 http://www.jb51.net/p1141.html の形式の URL であれば、$_SERVER['REQUEST_URI'] と $_SERVER[' の値の違いによって解析できます。 QUERY_STRING'] 最も重要なことは、ページが重複して渡された場合に生成される結果です...
ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
最新の問題
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート