【发布时间】:2013-09-29 09:21:15
【问题描述】:
我在本地有一个小项目。我在 Windows 和 XAMPP 下工作。我的文件目录结构是:
根目录:
C:\xampp\htdocs\routes在这个文件夹下,我有我的 bootstrap.php 和我想要初始化我的项目的配置。
公共文件夹:
C:\xampp\htdocs\routes\htdocs在这个文件夹下我有我的 index.php 和我的 .htaccess。
在这个.htaccess里面我有以下配置:
php_value include_path .:/routes
php_value auto_prepend_file bootstrap.php
如果我在 index.php 中执行 get_include_path(),它会显示 ".:/routes"。
但是我在网络浏览器上(输入http://localhost/routes/htdocs 之后)一直收到的消息是:
致命错误:未知:在 Unknown 行 0 中打开所需的“bootstrap.php”(include_path='.:/routes')失败b>
我在 .htaccess 中尝试了很多 include_path 的组合:
php_value 包含路径“.:/routes” php_value include_path .:../routes php_value 包含路径“.:./routes” php_value include_path ".:routes" ...
我的httpd.conf的配置是:
DocumentRoot "C:/xampp/htdocs"
<Directory />
AllowOverride none
Require all denied
</Directory>
<Directory /routes>
AllowOverride all
</Directory>
如果我在 index.php 中对 bootstrap 中的信息进行硬编码,它可以工作(至少这告诉我 bootstrap 中的要求配置良好)。 我不知道如何让我的项目识别 bootstrap.php。
我错过了什么?我做错了什么?
提前感谢您的帮助
【问题讨论】:
-
你试过省略
Require all denied吗?如果它试图包含根文件夹中的文件,那么这可能会阻止它这样做 -
是的,我试过了。没事了。我也在
中尝试了“AllowOverride all”。它没有用,所以我创建了
标签: php .htaccess include-path