我们知道php的配置都在php.ini这个配置文件中,在修改相应的参数后重启一下web服务器即可生效。但 是有时我们的空间可能是租用的虚拟主机,没有权限修改服务器的配置,这样可以在代码中通过ini_set()这个函数修改php的相关配置。但是这个函数 不是万能的,有些参数(例如post_max_size)修改不了的。PHP参数的可修改范围有以下几种
常量 | 值 | 可修改范围 |
PHP_INI_USER | 1 | 配置选项可在用户的 PHP 脚本或 Windows 注册表中设置 |
PHP_INI_PERDIR | 2 | 配置选项可在 php.ini, .htaccess 或 httpd.conf 中设置 |
PHP_INI_SYSTEM | 4 | 配置选项可在 php.ini 或者 httpd.conf 中设置 |
PHP_INI_ALL | 7 | 配置选项可在各处设置 |
只要常量值不是PHP_INI_SYSTEM都可以在.htaccess中修改,这样只要我们的空间支持.htaccess就可以了,格式php_value 名称 值,例如:
php_value memory_limit 1024M
php_value max_execution_time 200
php_value post_max_size 64M
示例
<IfModule mod_php5.c> php_value memory_limit 2048M </IfModule> <IfModule mod_rewrite.c> Options +FollowSymlinks RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php?/$1 [QSA,PT,L] </IfModule>