の.htaccess avalible $ _SERVER [ 'REDIRECT_REQUEST_URI']なしに上書きされて
Options +FollowSymlinks
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^cars/(.*).html$ /control.php [P,L]
RewriteRule ^trucks/(.*).html$ /control.php [P,L]
/control.php
<pre>
<?php
echo "Path Requested: " . $_SERVER['REQUEST_URI'] . "\n\n";
print_r($_SERVER);
?>
</pre>
テストURL(実際のホスト名を "example.com"に置き換え)
(期待し、必要に応じて)、ブラウザのアドレスバー内の表示URLがあること結果
Path Requested: /control.php
Array
(
[CONTEXT_DOCUMENT_ROOT] => /home/fubelboobin/public_html
[CONTEXT_PREFIX] =>
[DOCUMENT_ROOT] => /home/fubelboobin/public_html
[GATEWAY_INTERFACE] => CGI/1.1
[HTTP_ACCEPT] => text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
[HTTP_ACCEPT_ENCODING] => gzip, deflate
[HTTP_ACCEPT_LANGUAGE] => en-US,en;q=0.8,gl;q=0.6
[HTTP_CACHE_CONTROL] => max-age=0
[HTTP_CONNECTION] => close
[HTTP_HOST] => fubelboobin.com
[HTTP_UPGRADE_INSECURE_REQUESTS] => 1
[HTTP_USER_AGENT] => Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_6) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/61.0.3163.100 Safari/537.36
[HTTP_X_FORWARDED_FOR] => 23.241.124.74
[HTTP_X_FORWARDED_HOST] => fubelboobin.com
[HTTP_X_FORWARDED_SERVER] => fubelboobin.com
[PATH] => /bin:/usr/bin
[QUERY_STRING] =>
[REDIRECT_STATUS] => 200
[REMOTE_ADDR] => 166.62.119.108
[REMOTE_PORT] => 47854
[REQUEST_METHOD] => GET
[REQUEST_SCHEME] => http
[REQUEST_URI] => /control.php
[SCRIPT_FILENAME] => /home/fubelboobin/public_html/control.php
[SCRIPT_NAME] => /control.php
[SERVER_ADDR] => 166.62.119.108
[SERVER_ADMIN] => [email protected]
[SERVER_NAME] => fubelboobin.com
[SERVER_PORT] => 80
[SERVER_PROTOCOL] => HTTP/1.1
[SERVER_SIGNATURE] =>
[SERVER_SOFTWARE] => Apache
[UNIQUE_ID] => [email protected]
[PHP_SELF] => /control.php
[REQUEST_TIME_FLOAT] => 1509237121.06
[REQUEST_TIME] => 1509237121
[argv] => Array
(
)
[argc] => 0
)
注:
http://example.com/trucks/valugatah.html
だから、問題は何ですか?
私は/control.php
を返して、あなたが私の投稿結果$_SERVER['REQUEST_URI']
から見ることができるよう$_SERVER['REQUEST_URI']
が、私はしかし/trucks/valugatah.html
の元のURLでアドレスバーに見るものと同じであることを期待していますthe docsによれば、$_SERVER['REQUEST_URI']
が上書きされた場合、元の$_SERVER['REQUEST_URI']
を保持する新しいvar(自動的に作成された)$_SERVER['REDIRECT_REQUEST_URI']
にアクセスする必要がありますが、の結果、から見ることができます。は決して作成されません。 .htaccessファイルの中から「P」のフラグを削除
おそらく 'P'フラグとは何か...あなたはここのためにとにかく、それは標準の「プリティURLの一部ではないことを何を使っています"セットアップ... – CBroe
@CBroe - アイデアをありがとう!それはうまくいった。 – Pseudo