Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/228.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Mod_rewrite:如何查看变量内容?_Php_Javascript_Html_Apache_Mod Rewrite - Fatal编程技术网

Php Mod_rewrite:如何查看变量内容?

Php Mod_rewrite:如何查看变量内容?,php,javascript,html,apache,mod-rewrite,Php,Javascript,Html,Apache,Mod Rewrite,是否有方法使用javascript或PHP显示mod_rewrite变量的内容,如请求或请求文件名?是的,如果mod_rewrite变量已导出到Apache环境变量中,则可以在PHP中使用 <?php echo $_SERVER['THE_REQUEST']; echo $_SERVER['REQUEST_FILENAME']; ?> 为了导出Apache mod_rewrite变量,以便PHP可以通过Apache环境变量访问该变量,请确保Apache VirtualHost包含以

是否有方法使用javascript或PHP显示mod_rewrite变量的内容,如请求或请求文件名?

是的,如果mod_rewrite变量已导出到Apache环境变量中,则可以在PHP中使用

<?php
echo $_SERVER['THE_REQUEST'];
echo $_SERVER['REQUEST_FILENAME'];
?>
为了导出Apache mod_rewrite变量,以便PHP可以通过Apache环境变量访问该变量,请确保Apache VirtualHost包含以下配置:

RewriteEngine On
RewriteRule .* - [E=API_VERSION:%{API_VERSION},NE]
RewriteRule .* - [E=THE_REQUEST:%{THE_REQUEST},NE]
RewriteRule .* - [E=REQUEST_URI:%{REQUEST_URI},NE]
RewriteRule .* - [E=REQUEST_FILENAME:%{REQUEST_FILENAME},NE]
RewriteRule .* - [E=IS_SUBREQ:%{IS_SUBREQ},NE]
RewriteRule .* - [E=HTTPS:%{HTTPS},NE]
导出这些变量后,可以使用PHP来呈现mod_重写_请求和REQUEST_文件名变量,或任何其他Apache环境变量

<?php
echo $_SERVER['THE_REQUEST'];
echo $_SERVER['REQUEST_FILENAME'];
?>


PHP变量$\u服务器不包含mod\u重写变量。@user1420069 PHP无法直接访问这些变量,但如果这些变量在vhost中导出(并且在vhost修改后Apache已重新加载),则可以访问这些变量。答案已更新以反映这一点。