php - 为每个站点设置 php.ini 指令

标签 php apache ubuntu php-ini

我有多个站点在 Ubuntu Server 上的 Apache2 和 PHP 上运行。我知道 PHP 有一个 php.ini 文件,可让您设置 upload_max_filesize 的值, max_file_uploads , upload_tmp_dir等等。但这会将一个值应用于所有站点。

如何为每个站点设置指令?例如:我想设置 upload_max_filesize sitea.com 至 50M和upload_max_filesize至 5M 为 siteb.com .

同样,我想设置唯一的 session.name对于每个站点。如何才能做到这一点?我读到有一个叫做 PHP_INI_USER 的东西, PHP_INI_PERDIR , PHP_INI_SYSTEM , PHP_INI_ALL ,那么我该怎么做呢?

最佳答案

您可以使用每个站点(甚至每个文件夹)的 .htaccess 文件来设置 PHP 配置值 - 至少对于大多数设置:如果您查看 in the configuration directives documentation ,对于标记为 PHP_INI_PERDIRPHP_INI_ALL 的每个设置,您可以使用 php_value.htaccess 文件中进行设置PHP 的 "How to change configuration settings" 中记录的 code> 或 php_flag 命令文档。

例如,要在网站中设置 upload_max_filesize,请在该网站的文档根目录中创建一个 .htaccess 文件,并在其中放入文本:

php_value upload_max_filesize 24M

不幸的是,max_file_uploadsupload_tmp_dir 是标记为 PHP_INI_SYSTEM 的设置,您无法在 .htaccess 中更改它们文件...

关于php - 为每个站点设置 php.ini 指令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/74908737/

相关文章:

javascript - 解析器错误语法错误: Unexpected number in JSON

php - MySQL + PHP 中行之间的除法

apache - 如何使用 Apache 实现速率限制? (每秒请求数)

php - Apache 内存错误

php - 如何将变量值存储到mysql数据库中

php - 如何将域名页面重定向到另一台主机?

ubuntu - Grails 无法在 Ubuntu 上运行

Python - 如何获取 Ubuntu 上聚焦窗口的进程名称?(不是窗口标题)

Apache 限制 PUT 和 DELETE

apache - 强制删除 .htaccess 中的 .php 扩展名