将此mod_rewrite从.htaccess
移至apache2.conf
后,$_SERVER['SCRIPT_NAME']
和$_SERVER['PHP_SELF']
都会返回与其他值不同的值。
# point all requests to index.php
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-f
RewriteCond %{DOCUMENT_ROOT}%{REQUEST_FILENAME} !-d
RewriteRule ^ /index.php [L,NS]
URL:
http://domain.com/path/to/dir/
如果重写在.htaccess
,则$_SERVER['PHP_SELF']
会返回/index.php
如果重写在apache2.conf
,则$_SERVER['PHP_SELF']
会返回/path/to/dir/
如果$_SERVER['PHP_SELF']
不起作用,如何获取doc root的相对路径?
答案 0 :(得分:0)
要获取文档根目录的相对路径,可以使用.update($doc("_id" $in (usersIds: _*)), $set("inviteStatus" $eq "Invited"), GetLastError(), false , true)
,例如用法:
$_SERVER['DOCUMENT_ROOT']
或者您也可以使用define('APP_BASE', $_SERVER['DOCUMENT_ROOT']);
realpath(dirname(__FILE__))
希望这会有所帮助,欢呼:)
答案 1 :(得分:0)
你应该尝试使用这样的规则,它确实不应该在配置或.htaccess中找到它的位置。但是,如果使用apache配置,请确保它在Directory
指令中。并重新启动apache以进行任何配置更改。
<Directory /var/path/to/root>
RewriteEngine On
RewriteBase /
# point all requests to index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</Directory>