$_SERVER['REQUEST_URI'] が相対パスではなく完全な URL をスクリプトに返すため、PHP アプリが機能しません。
私の環境は
Windows7 64bit です。
XAMPP バージョン 1.8.2
PHP バージョン 5.4.16
Apache バージョン Apache/2.4.4 (Win32) OpenSSL/0.9.8y PHP/5.4.16
私の仮想ホスト会議:
<VirtualHost *:80>
DocumentRoot "D:/HTDOCS/ivankristianto"
ServerName www.ivankristianto.local
UseCanonicalName Off
<Directory "D:/HTDOCS/ivankristianto">
Options Indexes FollowSymLinks MultiViews
AllowOverride all
Require all granted
</Directory>
</VirtualHost>
$_SERVER コンテンツをテストするための基本的なスクリプトを作成しました。
echo '$_SERVER[\'HTTP_HOST\'] : ' . $_SERVER['HTTP_HOST'];
echo '<br/>' . '$_SERVER[\'PHP_SELF\'] : ' . $_SERVER['PHP_SELF'];
echo '<br/>' . '$_SERVER[\'REQUEST_URI\'] : ' . $_SERVER['REQUEST_URI'];
結果は次のとおりです。
// URL: http://localhost/ivankristianto/request.php
$_SERVER['HTTP_HOST'] : localhost
$_SERVER['PHP_SELF'] : /ivankristianto/request.php
$_SERVER['REQUEST_URI'] : /ivankristianto/request.php //This is correct
と
// URL: http://www.ivankristianto.local/request.php
$_SERVER['HTTP_HOST'] : www.ivankristianto.local
$_SERVER['PHP_SELF'] : /request.php
$_SERVER['REQUEST_URI'] : http://www.ivankristianto.local/request.php //This is wrong
プロキシは使用しませんでした。/etc/hosts に設定しただけです。
なぜこれが起こるのかを知るために何時間も費やし、グーグルとこのウェブサイトを検索しましたが、手がかりが見つかりません.
何が悪いのか教えてください。
ありがとう。
イヴァン