We launched new forums in March 2019—join us there. In a hurry for help with your website? Get Help Now!
    • 26281
    • 1 Posts
    sayaamaと申します。
    xoopsもそうでしたが、$_SERVER[’HTTP_HOST’] という記述が2箇所ほどありました。
    これですと、リバースプロキシしているサーバで使えませんよねー。
    $_SERVER[’HTTP_X_FORWARDED_HOST’]の有無とかで判定してキチンとホスト名をとるべきだと思います。
    とりあえず、以下のような関数を書いてやってみてますが、これで本当に大丈夫かどうか検証したら
    また報告したいと思います。
    以上、よろしくお願いします。
    function getHttpHostRP() {
    $localhostname = "";
    if(isset($_SERVER[’HTTP_X_FORWARDED_HOST’]) && isset($_SERVER[’HTTP_X_FORWARDED_SERVER’])){
    $httphost = $_SERVER[’HTTP_X_FORWARDED_HOST’];
    $ar = mb_split(",", $httphost);
    $httphost = $ar[0];
    $localhostname = $httphost;
    }else{
    $localhostname = $_SERVER[’HTTP_HOST’];
    }
    return $localhostname;
    }
    • 貴重な情報ありがとうございますー。ちょうど0963のとりまとめ中ですが参考にできるかも。