主机上通常有 include_path/htaccess 限制吗?

Posted

技术标签:

【中文标题】主机上通常有 include_path/htaccess 限制吗?【英文标题】:Are there usually include_path/htaccess restrictions on hosts? 【发布时间】:2011-11-27 20:34:51 【问题描述】:

我的 .htaccess 文件如下所示:

php_value include_path "/home/username/public_html/site"

并且与包含路径的位置相同。

它导致 500 内部服务错误,但在本地工作正常。我正在四处挖掘,试图通过主机找到一些东西,但运气不佳。

【问题讨论】:

仅当 PHP 作为 Apache 模块加载时才有效。也许事实并非如此。 hrm 我想这很有可能;主机没有列出太多这样的技术规格。你知道类似的基于 htaccess 的替代方案吗?这是我能够成功包含所有内容的唯一方法 您是否检查过您的 Apache error.log 以检查生成 500 的原因? 【参考方案1】:

如果不知道确切的错误信息,就很难判断出了什么问题。正如 Pekka 解释的那样,一个原因可能是没有使用 mod_php。例如,如果使用 suPHP 或任何其他基于 PHP 的 CGI 接口的变体,可能就是这种情况。

如果是这种情况,并且如果您使用的是 PHP 5.3.0 或更高版本,则可以使用 .user.ini 文件1 创建每个目录的配置。因此,不要在行中使用.htaccess 文件

php_value include_path "/home/username/public_html/site"

您将使用包含该行的.user.ini

include_path = "/home/username/public_html/site"

1) 请注意,这是默认文件名。该文件可能有不同的名称(文件名是通过 INI 指令user_ini.filename 配置的)或可能完全禁用

【讨论】:

非常感谢,每个目录的 php.ini 文件确实有帮助。但在某些情况下,当服务器不允许目录中的 ini 文件时,它可能无法正常工作。【参考方案2】:

在 Centos 中,默认的 include_path 是:

.:/usr/share/pear:/usr/share/php

【讨论】:

是的,默认路径正在显示。需要添加更多路径,因为项目需要是这样的。 ini_set 和 htaccess 都不在这里工作。

以上是关于主机上通常有 include_path/htaccess 限制吗?的主要内容,如果未能解决你的问题,请参考以下文章

003.OpenShift网络

新手建站教程

我用这个Oracle VM VirtualBox怎么把主机上的文件弄到虚拟机上啊

堡垒主机是堡垒机吗?两者有什么关系?

Mac修改主机名和计算机名

ip通信(第四周)上