How to Modify PHP Settings using .htaccess


With our cPanel servers running FastCGI, we have installed htscanner. This allows you to set custom values for most PHP environment settings using a website's .htaccess file.

Before using this method, be aware that you can also edit most common PHP variables easily in cPanel using the Select PHP Version option.
Click here for a guide on how to use that.


Step 1 - Access your .htaccess file.


Step 2 - Add the required changes to the top of the file, then select Save.

For reference, a few example entries can be found below:

php_flag  log_errors on
php_value error_log  /home/path/public_html/error_log
php_value upload_max_filesize 10M
php_value post_max_size 20M

Complete list of PHP values that can be altered


Variable Name Variable Default Value PHP mode (See this link)
allow_url_include "0" PHP_INI_ALL
always_populate_raw_post_data "0" PHP_INI_PERDIR
apd.bitmask "0" PHP_INI_ALL
apd.dumpdir NULL PHP_INI_ALL
apd.statement_tracing "0" PHP_INI_ALL
arg_separator.input "&" PHP_INI_PERDIR
arg_separator.output "&" PHP_INI_ALL
asp_tags "0" PHP_INI_PERDIR
assert.active "1" PHP_INI_ALL
assert.bail "0" PHP_INI_ALL
assert.callback NULL PHP_INI_ALL
assert.quiet_eval "0" PHP_INI_ALL
assert.warning "1" PHP_INI_ALL
async_send "0" PHP_INI_ALL
auto_append_file NULL PHP_INI_PERDIR
auto_detect_line_endings "0" PHP_INI_ALL
auto_globals_jit "1" PHP_INI_PERDIR
auto_prepend_file NULL PHP_INI_PERDIR
axis2.client_home "~/work/axisc/c/deply" PHP_INI_ALL
axis2.enable_exception "1" PHP_INI_ALL
axis2.enable_trace "1" PHP_INI_ALL
axis2.log_path "/tmp" PHP_INI_ALL
bcmath.scale "0" PHP_INI_ALL
bcompiler.enabled "1" PHP_INI_ALL
birdstep.max_links "-1" PHP_INI_ALL
blenc.key_file "/usr/local/etc/blenckeys" PHP_INI_ALL
cgi.nph "0" PHP_INI_ALL
cgi.rfc2616_headers "0" PHP_INI_ALL
child_terminate "0" PHP_INI_ALL
com.autoregister_casesensitive "1" PHP_INI_ALL
com.autoregister_typelib "0" PHP_INI_ALL
com.autoregister_verbose "0" PHP_INI_ALL
com.code_page "" PHP_INI_ALL
daffodildb.default_host "localhost" PHP_INI_ALL
daffodildb.default_password "daffodil" PHP_INI_ALL
daffodildb.default_socket NULL PHP_INI_ALL
daffodildb.default_user "DAFFODIL" PHP_INI_ALL
daffodildb.port "3456" PHP_INI_ALL
date.default_latitude "31.7667" PHP_INI_ALL
date.default_longitude "35.2333" PHP_INI_ALL
date.sunrise_zenith "90.583333" PHP_INI_ALL
date.sunset_zenith "90.583333" PHP_INI_ALL
date.timezone "" PHP_INI_ALL
dba.default_handler "" PHP_INI_ALL
default_charset "" PHP_INI_ALL
default_mimetype "text/html" PHP_INI_ALL
default_socket_timeout "60" PHP_INI_ALL
define_syslog_variables "0" PHP_INI_ALL
detect_unicode "1" PHP_INI_ALL
display_errors "1" PHP_INI_ALL
display_startup_errors "0" PHP_INI_ALL
docref_ext "" PHP_INI_ALL
docref_root "" PHP_INI_ALL
engine "1" PHP_INI_ALL
error_append_string NULL PHP_INI_ALL
error_log NULL PHP_INI_ALL
error_prepend_string NULL PHP_INI_ALL
error_reporting NULL PHP_INI_ALL
etpan.default.charset "utf-8" PHP_INI_ALL
etpan.default.protocol "imap" PHP_INI_ALL
exif.decode_jis_intel "JIS" PHP_INI_ALL
exif.decode_jis_motorola "JIS" PHP_INI_ALL
exif.decode_unicode_intel "UCS-2LE" PHP_INI_ALL
exif.decode_unicode_motorola "UCS-2BE" PHP_INI_ALL
exif.encode_jis "" PHP_INI_ALL
exif.encode_unicode "ISO-8859-15" PHP_INI_ALL
exit_on_timeout "" PHP_INI_ALL
expect.logfile "" PHP_INI_ALL
expect.loguser "1" PHP_INI_ALL
expect.timeout "10" PHP_INI_ALL
fbsql.batchsize "1000" PHP_INI_ALL
filter.default "unsafe_raw" PHP_INI_PERDIR
filter.default_flags NULL PHP_INI_PERDIR
from "" PHP_INI_ALL
gd.jpeg_ignore_warning "0" PHP_INI_ALL
geoip.custom_directory NULL PHP_INI_ALL
geoip.database_standard "GeoIP.dat" PHP_INI_ALL
highlight.bg "#FFFFFF" PHP_INI_ALL
highlight.comment "#FF8000" PHP_INI_ALL
highlight.default "#0000BB" PHP_INI_ALL
highlight.html "#000000" PHP_INI_ALL
highlight.keyword "#007700" PHP_INI_ALL
highlight.string "#DD0000" PHP_INI_ALL
html_errors "1" PHP_INI_ALL
http.allowed_methods "" PHP_INI_ALL
http.allowed_methods_log "" PHP_INI_ALL
http.cache_log "" PHP_INI_ALL
http.composite_log "" PHP_INI_ALL
http.etag.mode "MD5" PHP_INI_ALL
http.etag_mode "MD5" PHP_INI_ALL
http.force_exit "1" PHP_INI_ALL
http.log.allowed_methods "" PHP_INI_ALL
http.log.cache "" PHP_INI_ALL
http.log.composite "" PHP_INI_ALL
http.log.not_found "" PHP_INI_ALL
http.log.redirect "" PHP_INI_ALL
http.ob_deflate_auto "0" PHP_INI_PERDIR
http.ob_deflate_flags "0" PHP_INI_ALL
http.ob_inflate_auto "0" PHP_INI_PERDIR
http.ob_inflate_flags "0" PHP_INI_ALL
http.only_exceptions "0" PHP_INI_ALL
http.persistent.handles.ident "GLOBAL" PHP_INI_ALL
http.redirect_log "" PHP_INI_ALL
http.request.methods.allowed "" PHP_INI_ALL
http.request.methods.custom "" PHP_INI_PERDIR
http.send.deflate.start_auto "0" PHP_INI_PERDIR
http.send.deflate.start_flags "0" PHP_INI_ALL
http.send.inflate.start_auto "0" PHP_INI_PERDIR
http.send.inflate.start_flags "0" PHP_INI_ALL
http.send.not_found_404 "1" PHP_INI_ALL
hyperwave.default_port "418" PHP_INI_ALL
ibase.dateformat "%Y-%m-%d" PHP_INI_ALL
ibase.default_charset NULL PHP_INI_ALL
ibase.default_password NULL PHP_INI_ALL
ibase.default_user NULL PHP_INI_ALL
ibase.timeformat "%H:%M:%S" PHP_INI_ALL
ibase.timestampformat "%Y-%m-%d %H:%M:%S" PHP_INI_ALL
ibm_db2.binmode "1" PHP_INI_ALL
iconv.input_encoding "ISO-8859-1" PHP_INI_ALL
iconv.internal_encoding "ISO-8859-1" PHP_INI_ALL
iconv.output_encoding "ISO-8859-1" PHP_INI_ALL
ignore_repeated_errors "0" PHP_INI_ALL
ignore_repeated_source "0" PHP_INI_ALL
ignore_user_abort "0" PHP_INI_ALL
imlib2.font_cache_max_size "524288" PHP_INI_ALL
imlib2.font_path "/usr/share/php/fonts/" PHP_INI_ALL
implicit_flush "0" PHP_INI_ALL
include_path ".;/path/to/php/pear" PHP_INI_ALL
ingres.array_index_start "1" PHP_INI_ALL
ingres.auto "1" PHP_INI_ALL
ingres.blob_segment_length "4096" PHP_INI_ALL
ingres.cursor_mode "0" PHP_INI_ALL
ingres.default_database NULL PHP_INI_ALL
ingres.default_password NULL PHP_INI_ALL
ingres.default_user NULL PHP_INI_ALL
ingres.describe 1 PHP_INI_ALL
ingres.fetch_buffer_size 100 PHP_INI_ALL
ingres.reuse_connection "1" PHP_INI_ALL
ingres.scrollable "1" PHP_INI_ALL
ingres.trace "0" PHP_INI_ALL
ingres.trace_connect "0" PHP_INI_ALL
ingres.utf8 "1" PHP_INI_ALL
last_modified "0" PHP_INI_ALL
log_errors "0" PHP_INI_ALL
log_errors_max_len "1024" PHP_INI_ALL
magic_quotes_gpc "1" PHP_INI_PERDIR
magic_quotes_runtime "0" PHP_INI_ALL
magic_quotes_sybase "0" PHP_INI_ALL
mail.add_x_header "0" PHP_INI_PERDIR
mail.log "" PHP_INI_ALL
maxdb.default_db NULL PHP_INI_ALL
maxdb.default_host NULL PHP_INI_ALL
maxdb.default_pw NULL PHP_INI_ALL
maxdb.default_user NULL PHP_INI_ALL
maxdb.long_readlen "200" PHP_INI_ALL
max_execution_time "30" PHP_INI_ALL
max_input_nesting_level "64" PHP_INI_PERDIR
max_input_vars 1000 PHP_INI_PERDIR
max_input_time "-1" PHP_INI_PERDIR
mbstring.detect_order NULL PHP_INI_ALL
mbstring.encoding_translation "0" PHP_INI_PERDIR
mbstring.http_input "pass" PHP_INI_ALL
mbstring.http_output "pass" PHP_INI_ALL
mbstring.internal_encoding NULL PHP_INI_ALL
mbstring.language "neutral" PHP_INI_ALL
mbstring.script_encoding NULL PHP_INI_ALL
mbstring.strict_detection "0" PHP_INI_ALL
mbstring.substitute_character NULL PHP_INI_ALL
mcrypt.algorithms_dir NULL PHP_INI_ALL
mcrypt.modes_dir NULL PHP_INI_ALL
memory_limit "128M" PHP_INI_ALL
mongo.allow_empty_keys 0 PHP_INI_ALL
mongo.chunk_size 262144 PHP_INI_ALL
mongo.cmd "$" PHP_INI_ALL
mongo.default_host "localhost" PHP_INI_ALL
mongo.default_port 27017 PHP_INI_ALL
mongo.is_master_interval 15 PHP_INI_ALL
mongo.long_as_object 0 PHP_INI_ALL
mongo.native_long 0* PHP_INI_ALL
mongo.ping_interval 5 PHP_INI_ALL
mongo.utf8 1 PHP_INI_ALL
msql.allow_persistent "1" PHP_INI_ALL
msql.max_links "-1" PHP_INI_ALL
msql.max_persistent "-1" PHP_INI_ALL
mssql.batchsize "0" PHP_INI_ALL
mssql.charset "" PHP_INI_ALL
mssql.compatability_mode "0" PHP_INI_ALL
mssql.connect_timeout "5" PHP_INI_ALL
mssql.datetimeconvert "1" PHP_INI_ALL
mssql.max_procs "-1" PHP_INI_ALL
mssql.min_error_severity "10" PHP_INI_ALL
mssql.min_message_severity "10" PHP_INI_ALL
mssql.textlimit "-1" PHP_INI_ALL
mssql.textsize "-1" PHP_INI_ALL
mssql.timeout "60" PHP_INI_ALL
mysql.trace_mode "0" PHP_INI_ALL
mysql.default_port NULL PHP_INI_ALL
mysql.default_socket NULL PHP_INI_ALL
mysql.default_host NULL PHP_INI_ALL
mysql.default_user NULL PHP_INI_ALL
mysql.default_password NULL PHP_INI_ALL
mysql.connect_timeout "60" PHP_INI_ALL
mysqli.default_port "3306" PHP_INI_ALL
mysqli.default_socket NULL PHP_INI_ALL
mysqli.default_host NULL PHP_INI_ALL
mysqli.default_user NULL PHP_INI_ALL
mysqli.default_pw NULL PHP_INI_ALL
mysqlnd_qc.ttl 30 PHP_INI_ALL
mysqlnd_qc.cache_by_default 0 PHP_INI_ALL
mysqlnd_qc.cache_no_table 0 PHP_INI_ALL
mysqlnd_qc.use_request_time 0 PHP_INI_ALL
mysqlnd_qc.time_statistics 1 PHP_INI_ALL
mysqlnd_qc.collect_statistics 0 PHP_INI_ALL
mysqlnd_qc.ignore_sql_comments 1 PHP_INI_ALL
mysqlnd_qc.apc_prefix qc_ PHP_INI_ALL
mysqlnd_qc.memc_server 127.0.0.1 PHP_INI_ALL
mysqlnd_qc.memc_port 11211 PHP_INI_ALL
mysqlnd_qc.sqlite_data_file :memory: PHP_INI_ALL
mysqlnd_uh.report_wrong_types 1 PHP_INI_ALL
nsapi.read_timeout "60" PHP_INI_ALL
oci8.connection_class "" PHP_INI_ALL
odbc.defaultbinmode "1" PHP_INI_ALL
odbc.defaultlrl "4096" PHP_INI_ALL
odbc.default_db NULL PHP_INI_ALL
odbc.default_pw NULL PHP_INI_ALL
odbc.default_user NULL PHP_INI_ALL
odbtp.datetime_format "object" PHP_INI_ALL
odbtp.detach_default_queries "0" PHP_INI_ALL
odbtp.guid_format "string" PHP_INI_ALL
odbtp.interface_file "/usr/local/share/odbtp.conf" PHP_INI_ALL
odbtp.truncation_errors "1" PHP_INI_ALL
opendirectory.default_separator "/" PHP_INI_ALL
opendirectory.max_refs "-1" PHP_INI_ALL
opendirectory.separator "/" PHP_INI_ALL
open_basedir NULL PHP_INI_ALL
output_buffering "0" PHP_INI_PERDIR
output_handler NULL PHP_INI_PERDIR
pam.servicename "php" PHP_INI_ALL
pcre.backtrack_limit "1000000" PHP_INI_ALL
pcre.recursion_limit "100000" PHP_INI_ALL
pdo_odbc.connection_pooling "strict" PHP_INI_ALL
pgsql.ignore_notice "0" PHP_INI_ALL
pgsql.log_notice "0" PHP_INI_ALL
phar.extract_list "" PHP_INI_ALL
phar.readonly "1" PHP_INI_ALL
phar.require_hash "1" PHP_INI_ALL
post_max_size "8M" PHP_INI_PERDIR
precision "14" PHP_INI_ALL
python.append_path "" PHP_INI_ALL
python.prepend_path "." PHP_INI_ALL
register_argc_argv "1" PHP_INI_PERDIR
register_globals "0" PHP_INI_PERDIR
register_long_arrays "1" PHP_INI_PERDIR
report_memleaks "1" PHP_INI_ALL
report_zend_debug "1" PHP_INI_ALL
request_order "" PHP_INI_PERDIR
runkit.superglobal "" PHP_INI_PERDIR
sendmail_from NULL PHP_INI_ALL
serialize_precision "17" PHP_INI_ALL
session.auto_start "0" PHP_INI_ALL
session.bug_compat_42 "1" PHP_INI_ALL
session.bug_compat_warn "1" PHP_INI_ALL
session.cache_expire "180" PHP_INI_ALL
session.cache_limiter "nocache" PHP_INI_ALL
session.cookie_domain "" PHP_INI_ALL
session.cookie_httponly "" PHP_INI_ALL
session.cookie_lifetime "0" PHP_INI_ALL
session.cookie_path "/" PHP_INI_ALL
session.cookie_secure "" PHP_INI_ALL
session.entropy_file "" PHP_INI_ALL
session.entropy_length "0" PHP_INI_ALL
session.gc_divisor "100" PHP_INI_ALL
session.gc_maxlifetime "1440" PHP_INI_ALL
session.gc_probability "1" PHP_INI_ALL
session.hash_bits_per_character "4" PHP_INI_ALL
session.hash_function "0" PHP_INI_ALL
session.name "PHPSESSID" PHP_INI_ALL
session.referer_check "" PHP_INI_ALL
session.save_handler "files" PHP_INI_ALL
session.save_path "" PHP_INI_ALL
session.serialize_handler "php" PHP_INI_ALL
session.use_cookies "1" PHP_INI_ALL
session.use_only_cookies "1" PHP_INI_ALL
session.use_trans_sid "0" PHP_INI_ALL
short_open_tag "1" PHP_INI_PERDIR
simple_cvs.authMethod "0" PHP_INI_ALL
simple_cvs.compressionLevel "0" PHP_INI_ALL
simple_cvs.cvsRoot "0" PHP_INI_ALL
simple_cvs.host "0" PHP_INI_ALL
simple_cvs.moduleName "0" PHP_INI_ALL
simple_cvs.userName "0" PHP_INI_ALL
simple_cvs.workingDir "0" PHP_INI_ALL
SMTP "localhost" PHP_INI_ALL
smtp_port "25" PHP_INI_ALL
soap.wsdl_cache "1" PHP_INI_ALL
soap.wsdl_cache_dir "/tmp" PHP_INI_ALL
soap.wsdl_cache_enabled "1" PHP_INI_ALL
soap.wsdl_cache_limit "5" PHP_INI_ALL
soap.wsdl_cache_ttl "86400" PHP_INI_ALL
sqlite.assoc_case "0" PHP_INI_ALL
sybase.allow_persistent "1" PHP_INI_ALL
sybase.interface_file "" PHP_INI_ALL
sybase.max_links "-1" PHP_INI_ALL
sybase.max_persistent "-1" PHP_INI_ALL
sybase.min_error_severity "10" PHP_INI_ALL
sybase.min_message_severity "10" PHP_INI_ALL
sybct.deadlock_retry_count "0" PHP_INI_ALL
sybct.login_timeout "-1" PHP_INI_ALL
sybct.packet_size "0" PHP_INI_ALL
sybct.timeout "0" PHP_INI_ALL
sysvshm.init_mem "10000" PHP_INI_ALL
track_errors "0" PHP_INI_ALL
unserialize_callback_func NULL PHP_INI_ALL
uploadprogress.file.filename_template "/tmp/upt_%s.txt" PHP_INI_ALL
upload_max_filesize "2M" PHP_INI_PERDIR
url_rewriter.tags "a=href,area=href,frame=src,form=,fieldset=" PHP_INI_ALL
user_agent NULL PHP_INI_ALL
valkyrie.auto_validate "0" PHP_INI_ALL
valkyrie.config_path NULL PHP_INI_ALL
xbithack "0" PHP_INI_ALL
xmlrpc_error_number "0" PHP_INI_ALL
xmms.path "/usr/bin/xmms" PHP_INI_ALL
xmms.session "0" PHP_INI_ALL
y2k_compliance "1" PHP_INI_ALL
yami.response.timeout "5" PHP_INI_ALL
yaz.keepalive "120" PHP_INI_ALL
yaz.log_mask NULL PHP_INI_ALL
zend.enable_gc "1" PHP_INI_ALL
zlib.output_compression "0" PHP_INI_ALL
zlib.output_compression_level "-1" PHP_INI_ALL
zlib.output_handler "" PHP_INI_ALL


Did you find this article useful?