我需要修改htaccess中的memory_limit, php.ini 的 max_input_vars 和 max_execution_time 为了不修改服务器上php的全局配置。
在我的虚拟主机中,我有这样的配置:
<FilesMatch \.php>
SetHandler "proxy:unix:/var/run/php/php7.3-fpm.sock|fcgi://localhost/"
</FilesMatch>
在我的 htaccess 中,我测试了这两个配置,但没有成功:
<IfModule php7_module>
php_value memory_limit 512M
php_value max_input_vars 10000
php_value max_execution_time 1800
</IfModule>
还有
<IfModule mod_php7.c>
php_value memory_limit 512M
php_value max_input_vars 10000
php_value max_execution_time 1800
</IfModule>
对于
php7.3-fpm.sock
的情况,我是否必须使用其他方式?
谢谢
在您的配置文件中,默认路径“/etc/php/7.3/fpm/pool.d/php7.3-fpm.conf”或您的路径,更改为:
php_admin_value[memory_limit] = 512M
php_admin_value[max_input_vars] = 10000
php_admin_value[max_execution_time] = 1800
然后重新启动您的网络服务,并测试您的设置。
php-fpm 和 mod-php 是在 apache Web 服务器上使用 php 的两种不同方法。 .htaccess 规则仅适用于 mod-php。 IfModule 规则确保它们仅在使用 mod-php 时执行。 在这两种情况下,您都可以在 PHP 代码中使用 php 函数 set_time_limit(1800) 和 ini_set('memory_limit', '512M') 来更改时间和内存限制(如果服务器配置允许)。