我的php.ini中有mbstring.func_overload = 7,我需要为一个目录设置为0。我发现在使用PHP时通过mod_fcgid我不能使用.htaccess,就像我在Debian安装中那样。
我在我想要将此设置设置为0的目录中创建了一个.user.ini,并且我还放置了一个包含phpinfo()的test.php;在同一目录中的行,以查看此.user.ini是否生效。
除了我想要改变的上述设置之外,我还在这个.user.ini文件中添加了一些其他的PHP设置,我不会留在那里,只是要注意事情是否真的发生了变化。
我的.user.ini:
post_max_size = 12M
upload_max_filesize = 128M
[Date]
date.timezone = "UTC"
[mbstring]
mbstring.language = German
mbstring.func_overload = 0
奇怪的是:在请求test.php文件时,所有上述设置都被接受并显示在我的.user.ini中,因为" local"设置,除了一个:mbstring.func_overload对于本地和全局配置仍然是7。
任何提示为什么忽略mbstring.func_overload而我的.user.ini中的其他PHP设置工作正常?
答案 0 :(得分:1)
我有同样的问题。我可以在.user.ini中更改任何mbstrings-settings,但不能更改mbstring.func_overload。
UPD:我发现了一个原因 - 在.user.ini中无法重新定义mbstring.func_overload,因为状态为PHP_INI_SYSTEM。
This setting can only be changed from the php.ini file.
解。在nginx.conf中添加以下行:
`
location ~ \.php$ {
fastcgi_param PHP_VALUE "date.timezone='Europe/Berlin'
mbstring.func_overload=2
memory_limit=1024M";
...another fastcgi-options...
}
`