有没有办法使用javascript或PHP显示mod_rewrite变量的内容,例如THE_REQUEST或REQUEST_FILENAME?
答案 0 :(得分:2)
是的,如果已将mod_rewrite变量导出到Apache环境变量中,可以使用$_SERVER variable 在PHP中完成此操作。
为了导出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_rewrite THE_REQUEST和REQUEST_FILENAME变量,或任何其他Apache环境变量。
<?php
echo $_SERVER['THE_REQUEST'];
echo $_SERVER['REQUEST_FILENAME'];
?>