在 Dreamhost 共享主机上启用 phar 吗?

在 Dreamhost 共享主机上启用 phar 吗?

所以,我正在尝试使用西莱克斯在我的 Dreamhost 账户上,我收到一个错误

Fatal error: Class 'Phar' not found in blah blah blah...

当我尝试包含 Silex.phar 文件时。当我查看 phpinfo() 时,没有 Phar 部分,尽管我看到的所有内容都声称 Phar 支持应该默认包含在 php 5.3.whatever 中,而我正在运行的就是这个版本。有什么想法吗?

答案1

搞定了。如果你在添加一个目录~/.php/5.3/,然后phprc在其中放入一个名为的文件,并在其中添加以下行

extension=phar.so

然后 phar 扩展被加载。

答案2

我发现你必须在 phprc 文件中添加更多行才能使其在 FastCGI 模式下工作

extension=phar.so
detect_unicode = Off
phar.readonly = Off
phar.require_hash = Off
suhosin.executor.include.whitelist = phar

答案3

您通常无法在共享主机的 PHP 配置中启用/禁用某些功能。根据主机的设置,可以使用 .htaccess 文件中的设置来调整许多功能,但启用模块/库不属于其中之一。

由于这样或那样的原因,大多数主机并不完全使用默认的 PHP 选项运行,因此即使它默认包含在标准分发中,您也不能依赖于在任何给定主机上找到它。

您需要联系您的主机。如果该功能对他们的客户普遍有用,他们可能愿意为您启用该功能,或者他们可能已经在某些主机上启用了该功能(但尚未向所有主机推出),在这种情况下,他们可以将您的帐户移至已经拥有该功能的服务器。

相关内容