0

IIS上のPHPで現在の完全に書き換えられたURLを取得する方法はありますか?

たとえば、次のような URL があります。

http://www.domain.com/searchresults.php?section=99&page=1&model=セクション名

これは次のように書き換えられます: http://www.domain.com/section99/page1/section-name

以下を使用して元の URL をつなぎ合わせることができました。

function selfURL(){
    if(!isset($_SERVER['REQUEST_URI'])){
        $serverrequri = $_SERVER['PHP_SELF'];
    }else{
        $serverrequri =    $_SERVER['REQUEST_URI'];
    }
    $s = empty($_SERVER["HTTPS"]) ? '' : ($_SERVER["HTTPS"] == "on") ? "s" : "";
    $protocol = "http";
    $port = ($_SERVER["SERVER_PORT"] == "80") ? "" : (":".$_SERVER["SERVER_PORT"]);
    return $protocol."://".$_SERVER['SERVER_NAME'].$port.$serverrequri.$_SERVER['QUERY_STRING'];   
}
print(selfURL());

とにかく、書き換えられた URL を簡単に選択して、現在のページの種類に応じてさまざまな形式や変数から使いやすい URL を作成する必要があるオーバーヘッドを回避できますか?

4

2 に答える 2

0

Apacheのmod_rewrite ルールをファイルで使用し、IIS 7 にインポートすることをお勧め.htaccessします。これにより、web.config ファイルが生成されます。

もちろん、 で直接作業する方法を知っている場合は、それを試してくださいweb.config

于 2013-08-20T09:11:52.563 に答える