.htaccess php_value auto_prepend_file导致500错误.我怎样才能解决这个问题?

use*_*274 4 php .htaccess

我的.htaccess如下:

Options +FollowSymLinks
RewriteEngine On
RewriteBase /school
RewriteRule ^([a-zA-Z0-9]+)/$ index.php?page=$1
RewriteRule ^([a-zA-Z0-9]+)$ index.php?page=$1

php_value auto_prepend_file ./inc/library.php

ErrorDocument 404 /school/index.php?page=404
Run Code Online (Sandbox Code Playgroud)

截至./,我读到表明相对路径.

Wes*_*rch 9

注意:这些信息几乎是从另一个网站逐字记录的,我认为它很好地解释了这个问题,我非常怀疑这是问题所在:


在.htaccess文件中使用php_flag或php_value

一些PHP脚本建议在.htaccess文件中使用"php_value"或"php_flag"命令,如下例所示:

php_value  include_path         ".:/usr/local/lib/php" 
php_flag   display_errors       Off
php_value  upload_max_filesize  2M
php_value  auto_prepend_file    "./inc/library.php"
Run Code Online (Sandbox Code Playgroud)

但是,有些服务器在"CGI模式"(而不是Apache模块)中运行PHP,因此您不能在.htaccess文件中使用"php_value"或"php_flag"命令.如果您尝试这样做,您将看到"内部服务器错误"消息.

但是,您可以修改php.ini文件以获得相同的效果.事实上,修改php.ini文件实际上是比使用php_value或的php_flag更加灵活:有,你不能使用.htaccess文件覆盖很多东西,但是你可以重写几乎在php.ini文件中的任何PHP设置.

要获得与上面.htaccess行相同的效果,您只需将这些行添加到自定义php.ini文件中:

include_path = ".:/usr/local/lib/php" 
display_errors = Off
upload_max_filesize = 2M
auto_prepend_file = "./inc/library.php"
Run Code Online (Sandbox Code Playgroud)

注意:某些系统需要路径周围的引号,有些系统不能使用引号.