HTTP_HOST
失敗したドメイン名と比較しようとしています。この原因を突き止めるのに苦労したので、その長さを印刷しようとしました。驚いたことに、実際のドメイン名の長さが出力されます (Web プロキシを使用していますが)。
I を使用すると、この出力strlen
と同じ長さが得られます (必要なものだけを示します)。var_dump()
["HTTP_HOST"]=>
string(12) "mydomain.com.s48.wbprx.com"
["SERVER_NAME"]=>
string(12) "mydomain.com.s48.wbprx.com"
元のドメインは、文字列の長さを含めて mydomain.com に置き換えられました。
私は非常に唖然としています。なぜ、echo を使用して文字列を印刷し、全体を表示できるのに、文字列の長さを取得できないのでしょうか? 私がしたとしても、str_replace('.','', $str)
それは私を返します"mydomaincom"
参考になる場合は、私のウェブサイトでも次の htaccess コードを使用しています。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
# Removes .php
RewriteCond $1 !\.(gif|jpe?g|png|bmp)$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ $1.php [L]
</IfModule>
.php を使用した場合と使用しない場合の両方を試しました。同じ結果です。
この結果はhttps://incloak.com/を使用して作成されました。
私のPHPバージョンは5.3.14
、それが違いを生むかどうかです。