Ajustando PHP.INI en via .htaccess y vhost

La configuracion global del interprete de PHP esta en el fichero php.ini, según el servidor, puede encontrarse en :

./etc/php.ini
./usr/local/Zend/etc/php.ini
./usr/local/admin/conf/php.ini

Existen también servidores con configuraciones que tambien permiten crear un archivo de configuración posterior a php.ini
En el caso de Plesk 8 (un servidor multidominios), un archivo …/dominio/conf/vhost.conf esta a disposición para modificar el modo en que PHP ejecuta exclusivamente para ese dominio si alterar la configuración de los otros que en ese servidor existan. Hablé sobre ello hace unos dias  https://david.toribio.eu/2008/05/31/incluyendo-directivas-apache-en-entorno-plesk/

SIn emabrgo en esta ocasión introduzco un ejemploc oncreto en el que podemos ahcer uso de dicha tecnica.

Ejemplos :

php_value register_globals off
php_value upload_max_filesize 30M
php_value post_max_size 30M
php_value memory_limit 24M
php_value max_execution_time 10000
php_value max_input_time 10000
php_value register_globals 0
php_value track_vars 1
php_value short_open_tag 1
php_value magic_quotes_gpc 0
php_value magic_quotes_runtime 0
php_value magic_quotes_sybase 0
php_value arg_separator.output “&”
php_value session.cache_expire 200000
php_value session.gc_maxlifetime 200000
php_value session.cookie_lifetime 2000000
php_value session.auto_start 0
php_value session.save_handler user
php_value session.cache_limiter none
php_value allow_call_time_pass_reference On

SetOutputFilter PHP
SetInputFilter PHP
LimitRequestBody 30000000

Para conocer la configuración actual de PHP, podemos crear un archivo que contenga estos datos y que podamos consultar con un navegador web:

// Show all information, defaults to INFO_ALL
phpinfo();

// Show just the module information.
// phpinfo(8) yields identical results.
phpinfo(INFO_MODULES);
?>

Otro modo de configurar PHP es en el archivo .htaccess dentro del directorio raíz de nustro sitio.
Ver .htacces según www.apache.org

Es importante entender que la configuración de php.ini sera ignorada por la configuración que uno añada al archivo .htacces

Atención :
Dentro de .htaccess no pueden usarse ciertas constantes como PHP_INI_USER.
Tabla de constantes

Constante Valor Significado
PHP_INI_USER____1___La entrada puede definirse en scripts de usuario o en el registro de Windows
PHP_INI_PERDIR__2___La entrada puede definirse en php.ini, .htaccess o httpd.conf
PHP_INI_SYSTEM__4___La entrada puede definirse en php.ini o httpd.conf
PHP_INI_ALL_____7___La entrada puede definirse en cualquier parte

Para configurar PHP desde .htacces se recomienda usar :php_flag

Ejemplos :

php_flag register_globals off
php_flag magic_quotes_gpc on

Una observación, en este ejemplo hemos puesto php_flag en algunos sitios he visto que usan php_admin_flag, parece ser que hay una difernecia sutil pero no s eesactamente cual es.

Para más información, consultar :
Directivas de php.ini en : http://www.php.net/manual/es/ini.php
Sitio oficial de PHP : http://www.php.net/
Como cambiar la configuración de PHP según http://www.php.net/

This entry was posted in plesk and tagged , , , . Bookmark the permalink.

2 Responses to Ajustando PHP.INI en via .htaccess y vhost

  1. -bash-3.1# cat vhost.conf
    < directory /var/www/vhosts/ads.canaljuegos.com/httpdocs>
    
     php_admin_flag  register_argc_argv on
    < /directory>
    
    -bash-3.1#
    

Leave a Reply

Your email address will not be published. Required fields are marked *