如何为每个目录设置Php的auto_prepend_file指令?

CLJ*_*CLJ 9 php apache .htaccess apache2

背景:我有一些代码在处理我想设置为auto_prepend_file的php页面之前检查用户是否有有效会话.但是,我需要排除用户尝试从需要有效会话登录的页面.我希望能够在每个目录的基础上设置auto_prepend_file值.

环境:PHP 5.2.6m Apache 2,在Windows上运行php作为cgi而不是mod_php,在Windows上运行(如果这很重要),在我完全控制的机器上运行(不是托管环境)

使用htaccess文件是b/c我没有使用mod_php.我无法改变php.ini来设置auto_prepend_file,服务器抛出内部错误.并且ini_set()不起作用b/c它已经加载了会话检查文件,然后才能更改auto_prepend_file的值.

如果你没有使用mod_php/htaccess,我没有看到在每个目录的基础上设置auto_prepend_file的方法.我错过了什么吗?

rob*_*lls 8

你提到你不能使用.htaccess文件,但你可以修改httpd.conf并执行以下操作:

<Directory "c:/wamp/www/dev/">
    Php_value auto_prepend_file c:/wamp/www/dev/prepend.php
</Directory>
Run Code Online (Sandbox Code Playgroud)

编辑 - 刚刚意识到这在运行CGI时不起作用.我想尽管有一件事是有效的,如果你创建了一个php.ini文件的副本,把它放在目录中,并将你的prepend指令放在那里,如:

auto_prepend_file = c:/wamp/www/dev/prepend.php
Run Code Online (Sandbox Code Playgroud)