2014-02-26 94 views
0

我有全球php.ini文件位于/usr/local/lib文件夹。自定义php.ini文件位于/home/petstail/public_html/文件夹中。域名自定义php.ini

这就是我的phpinfo()的样子。

enter image description here

我仍然加载全局php.ini文件。 如何更改配置文件路径,并运行自定义php.ini文件。

谢谢。

回答

1

你可能通过.htaccess能够做到这一点通过设置环境变量(如果Apache运行mod_php的):

SetEnv PHPRC /home/petstail/public_html/php.ini

然而,你的php.ini文件不应是在文档中根(可公开访问的地方)......至少将其存储在受另一个.htaccess定义的Deny from all保护的目录中。

或者您可以使用以下方法拒绝对php.ini的访问。

<FilesMatch "php.ini"> 
    deny from all 
    allow from 127.0.0.1 
<FilesMatch> 
+0

尽管如此,它的加载全球的php.ini –

+0

阿帕奇可能无法运行'mod_php' - 通常你会从Apache的'httpd.conf'或在httpd的虚拟主机内设置。 conf'(使用'PHPIniDir'),但是,主机允许你这样做的可能性(除非你在专用主机上)几乎没有。为什么你需要定义一个自定义的php.ini?是否有需要设置的变量,在运行时无法使用'ini_set'完成? – CD001

+0

我已经为网站本身定义了include_path。我在同一台服务器上有生产和开发网站。我不能使用彼此包含的路径。这就是原因。 –

0

根据你的php版本,你应该参考php文档,看看是否INI设置。

在这里看到: http://www.php.net/manual/en/configuration.file.per-user.php

+0

我使用的是PHP 5.4.25 –

+0

因为他们已经改变了外部ini文件'.user.ini'但是有限制的可改变,你可以改变我会参考这个[链接](http://www.php.net /manual/en/ini.list.php) –