PHP
downloads | documentation | faq | getting help | mailing lists | reporting bugs | php.net sites | links | conferences | my php.net

search for in the

Language Reference> <Problemler?
Last updated: Sat, 17 Jul 2004

view this page in

Bölüm 4. Konfigürasyon

Konfigürasyon dosyası

Konfigürasyon dosyası (PHP 3.0 için php3.ini, PHP 4.0 için php.ini olarak adlandırılır), PHP başladığında okunur. PHP'nin sunucu modülleri için, bu işlem yalnızca web sunucusu okunduğunda gerçekleştirilir. CGI kurulumlar için, her yeni sayfa isteğinde okunur.

Örnek 4-1. php.ini örneği

; any text on a line after an unquoted semicolon (;) is ignored
[php] ; section markers (text within square brackets) are also ignored
; Boolean values can be set to either:
;    true, on, yes
; or false, off, no, none
register_globals = off
magic_quotes_gpc = yes

; you can enclose strings in double-quotes
include_path = ".:/usr/local/lib/php"

; backslashes are treated the same as any other character
include_path = ".;c:\php\lib"

PHP, Apache modülü olarak kullanıldığında, konfigürasyon ayarları Apache konfigürasyon dosyasından ve .htaccess dosyalarının içinden de değiştirilebilir.

PHP 3.0'da, "php3_" öntakısına sahip olanlar dışında php3.ini içindeki bütün ayarların birer Apache direktif karşılığı bulunur.

PHP 4.0'da, PHP konfigürasyonunu Apache konfigürasyon dosyasından değiştirmenize izin veren bir dizi Apache direktifi bulunur.

php_value isim değer

Seçili değişkene değer atar.

php_flag isin aç|kapa

Bu komut Boolean konfigürasyon ayarları için kullanılır.

php_admin_value isim değer

Seçili değişkenin değerini değiştirir. "Admin" konfigürasyon ayarları ancak Apache konfigürasyon dosyası içersinden değiştirilebilir, .htaccess kullanılarak yapılamaz.

php_admin_flag isim aç|kapa

Bu komut Boolean konfigürasyon ayarları için kullanılır.

Örnek 4-2. Apache konfigürasyon örneği

<IfModule mod_php4.c>
  php_value include_path ".:/usr/local/lib/php"
  php_flag safe_mode on
</IfModule>
<IfModule mod_php3.c>
  php3_include_path ".:/usr/local/lib/php"
  php3_safe_mode on
</IfModule>

phpinfo() komutunun çıktısından konfigürasyon değerlerinin ayarlarını görebilirsiniz. Ayrıca get_cfg_var() fonksiyonunu kullanarak, bu değerlere tek tek erişebilirsiniz. get_cfg_var().

Genel Konfigürasyon Direktifleri

allow_url_fopen boolean

Bu seçenek URL-duyarlı fopen okuyucusunun URL'lere dosyaymış gibi erişebilmesini etkinleştirir. Öntanımlı okuyucular uzaktaki dosyalara erişim için ftp ya da http protokolünün kullanımını sağlarlar, zlib gibi uzantılar ek okuyucular da sağlayabilirler.

Not: Bu seçenek 4.0.3 sürümünün hemen ardından tanıtılmıştır. 4.0.3 ve ona kadar olan sürümler, bu seçeneği yalnızca derleme esnasında --disable-url-fopen-wrapper. komutunu vererek devre dışı bırakabilirler.

asp_tags boolean

ASP-tipi <% %> etiketlerinin alışılmış <?php ?> etiketlerine ek olarak kullanılabilmesini sağlar. Bu değişken değeri hızlıca yazmak için kullanılan <%= $value %> kullanımını da içerir. Daha fazla bilgi için, HTML'den kaçış bölümünü okuyun.

Not: ASP-tipi etiket desteği 3.0.4 sürümünde eklenmiştir.

auto_append_file string

Ana dosyadan hemen sonra okunacak dosya ismini belirtir. Bu dosya include() fonksiyonu ile çağrılmış gibi çalıştırılır, bu nedenle include_path kullanılır.

Özel none değeri auto-appending işlemini devre dışı bırakır.

Not: Uygulama exit() ile sonlandırıldığında, auto-append işlemi gerçekleşmeyecektir.

auto_prepend_file string

Ana dosyadan hemen önce okunacak dosya ismini belirtir. Dosya include() fonksiyonu ile çağrılmış gibi çalıştırılır, bu nedenle include_path kullanılır.

Özel none değeri auto-prepending işlemini devre dışı bırakır.

cgi_ext string

display_errors boolean

Bu seçenek hataların ekrana HTML çıktısının bir parçası olarak yazdırılıp yazdırılmayacağını belirtir.

doc_root string

PHP'nin sunucudaki "kök klasör"üdür. Yalnızca dolu olduğunda kullanılır. PHP güvenli modda çalışıyorsa, bu klasörün dışındaki dosyalar çalıştırılamaz.

engine boolean

Bu direktif yalnızca PHP Apache modülü olarak kullanıldığında kullanışlıdır. PHP kullanımını klasör bazında ya da sanal sunucu bazında denetlemek isteyen siteler için uygundur. httpd.conf dosyasında uygun gerekli yere engine off yazılarak, PHP devre dışı bırakılabilir.

error_log string

Uygulama hata çıktılarının saklanacağı dosya ismidir. Özel bir değer olan syslog kullanıldığında, hatalar sistem hata yöneticisine gönderilir. UNIX altında bu, syslog(3)'ün ve Windows NT altında event log'un kullanılacağı anlamına gelir. Sistem hata yöneticisi Windows 95 altında desteklenmemektedir.

error_reporting integer

Hata raporlama seviyesini belirler. Bu parametre bit alanını temsil eden bir tamsayıdır. Kullanmak istediğiniz hata raporlama seviyelerini toplayın.

Tablo 4-1. Hata Raporlama Seviyeleri

bit değeriraporlamayı etkinleştir
1normal hatalar
2normal uyarılar
4okuyucu hataları
8kritik olmayan uyarılar
Bu direktif için öntanımlı değer 7'dir (normal hatalar, normal uyarılar ve okuyucu hataları görüntülenir).

html_errors boolean

Hata mesajlarındaki HTML etiketlerini kapatır.

open_basedir string

PHP tarafından açılabilecek dosyaların bulunduğu dizin yapısını kısıtlar.

Bir uygulama bir dosyayı açmak istediğinde, örneğin fopen ya da gzopen ile, dosyanın yeri kontrol edilir. Dosya belirtilen dizin yapısının dışındaysa, PHP dosyayı açmayı reddeder. Bütün sembolik linkler çözülür, bu nedenle bu kısıtlamayı symlink kullanarak aşmak mümkün değildir.

Özel bir değer olan . çalıştırılan dosyanın bulunduğu klasörün temel klasör olarak kullanılacağını belirtir.

Windows altında, klasörleri noktalı virgülle ayırın. Diğer bütün sistemlerde, klasörleri virgül ile ayırın. open_basedir altındaki bütün klasörler otomatik olarak dizin listesine dahil edilmektedir.

Not: Çoklu klasör desteği 3.0.7'de eklenmiştir.

Öntanımlı değer bütün dosyaların açılmasına izin verir.

gpc_order string

GET/POST/ÇEREZ değişkenlerinin işlenme sırasını belirler. Öntanımlı değer "GPC"dir. Bu değerin örneğin "GP" olarak ayarlanması, PHP'nin bütün çerezleri gözardı etmesi ve POST metodu ile gelip de GET metoduyla gelen değişkenlerden biriyle aynı isimde olan bütün değişkenlerin GET metodu değeriyle ezilmesine neden olur.

Bu seçenek PHP 4'te mevcut değildir. variables_order kullanın.

variables_order string

EGPCS (Ortam, GET, POST, Çerez, Sunucu) değişkenlerinin işlenme sırasını belirler. Öntanımlı değer "EGPCS"dir. Bu değerin "GP" olarak değiştirilmesi, PHP'nin ortam değişkenlerini, çerezleri ve sunucu değişkenleri tamamıyla gözardı etmesine ve aynı isimde olan bütün GET ve POST değişkenlerinden GET değişkenini POST değişkeni ile ezecektir.

Ayrıca bakın register_globals.

ignore_user_abort string

Öntanımlı olarak açıktır. Off olarak değiştirildiğinde, kullanıcının bağlantıyı koparması durumunda PHP'nin çalışması da durur. ignore_user_abort().

include_path string

require(), include() ve fopen_with_path() fonksiyonlarının tarayacağı klasötleri belirler. Biçimi sistemdeki PATH ortam değişkeni gibidir: UNIX altında virgülle, Windows altında noktalı virgülle ayrılmış klasör isimleri.

Örnek 4-3. UNIX include_path

include_path=.:/home/httpd/php-lib

Örnek 4-4. Windows include_path

include_path=".;c:\www\phplib"
Bu direktif için öntanımlı değer olan . yalnızca geçerli klasörde tarama yapar.

isapi_ext string

log_errors boolean

Uygulama hata mesajlarının sunucu hata yöneticisinde saklanıp saklanmayacağını belirler. Bu seçenek sunucu-bağımlıdır.

magic_quotes_gpc boolean

GPC (Get/Post/Çerez) işlemleri için magic_quotes değerinin durumunu belirler. magic_quotes açık olduğunda, bütün ' (tek-tırnak), " (çift tırnak), \ (ters bölü) ve NUL değerlerinden bir ters bölü kullanılarak kaçılacaktır. magic_quotes_sybase açıksa, tek-tırnak işareti, tersbölü yerine ikinci bir tek tırnak ile kaçılacaktır.

magic_quotes_runtime boolean

magic_quotes_runtime etkinleştirildiğinde, veritabanı ya da metin dosyası gibi dış kaynaklardan veri döndüren bütün fonksiyonların döndürdükleri değerler ters bölü ile kaçılacaktır. magic_quotes_sybase değeri de açıksa, tek-tırnaklar, ikinci bir tek-tırnak ile kaçılacaktır.

magic_quotes_sybase boolean

magic_quotes_sybase değeri aktifse, magic_quotes_gpc ya da magic_quotes_runtime değerlerinin etkin olması durumunda tek-tırnaklar ters bölü yerine ikinci bir tek-tırnak kullanılarak kaçılacaktır.

max_execution_time integer

Bu seçenek bir uygulamanın PHP tarafından sonlandırılmadan önce en çok kaç saniye çalışabileceğini belirler. Bu, kötü yazılmış uygulamaların sunucuyu çökertmesini önlemeye yardımcı olur. Öntanımlı değer 30 dur.

En fazla çalışma zamanı sistem çağrılarından etkilenmez (sleep() fonksiyonu gibi). Lütfen daha fazla bilgi için set_time_limit() fonksiyonuna gözatın.

memory_limit integer

Bir uygulamanın kullanabileceği en fazla hafıza miktarını belirler. Bu, kötü yazılmış uygulamaların bütün sistem hafızasını yiyip bitirmesini önlemeye yardımcı olur.

nsapi_ext string

register_globals boolean

EGPCS (Ortam, GET, POST, Çerez, Sunucu) değişkenlerinin global değişken olarak kullanılıp kullanılamayacağını belirtir. Uygulamalarınızdaki değişkenlerin kullanıcı verilerinden etkilenmesini istemiyorsanız bu seçeneği kapatabilirsiniz. Bu seçenek en çok track_vars ile birlikte kullanıldığında anlamlı olur. Bu şekilde EGPCS değişkenlerine $HTTP_ENV_VARS, $HTTP_GET_VARS, $HTTP_POST_VARS, $HTTP_COOKIE_VARS, ve $HTTP_SERVER_VARS dizi-değişkenlerini kullanarak global boyuttan ulaşabilirsiniz.

Bunun çalışabilmesi için Apache ayar dosyanızdaki ilgili klasöre ait AllowOverride değerinin AllowOverride All olması gerektiğini unutmayın.

short_open_tag boolean

PHP moduna geçmek için kullanılan kısa şeklin (<? ?>) kullanımına izin verilip verilmeyeceğini belirtir. PHP'yi XML ile birlikte kullanmak istiyorsanız, bu seçeneği devre dışı bırakmalısınız. Devre dışı bırakıldığında, açılış etiketinin uzun hali kullanılmalıdır (<?php ?>).

sql.safe_mode boolean

track_errors boolean

Etkinleştirildiğinde, son verilen hata her zaman global boyuttaki $php_errormsg değişkenine atanır.

track_vars boolean

Etkinleştirildiğinde, Ortam, GET, POST, Çerez ve Sunucu değişkenlerine $HTTP_ENV_VARS, $HTTP_GET_VARS, $HTTP_POST_VARS, $HTTP_COOKIE_VARS, ve $HTTP_SERVER_VARS global dizi-değişkenlerinden ulaşılabilir.

PHP 4.0.3'ten itibaren, track_vars her zaman açıktır.

upload_tmp_dir string

Upload yapılırken dosyaların saklanacağı geçici klasörü belirtir. PHP'nin çalıştığı kullanıcının bu klasöre yazma hakkı bulunmalıdır.

upload_max_filesize integer

Upload edilecek dosyanın sahip olabileceği en büyük boyuttur. Değer byte cinsindendir.

user_dir string

Kullanıcıların PHP için kullandıkları ana klasörü belirtir. Örnek olarak public_html verilebilir.

warn_plus_overloading boolean

Etkinleştirildiğinde, artı (+) operatörünün karakter dizilerinde kullanılması durumunda uyarı verir. Bu, karakter dizisi birleştiricisi olan (.) kullanılarak yeniden yazılması gereken uygulamaları bulmak için kullanışlıdır.

Güvenli Mod Konfigürasyon Direktifleri

safe_mode boolean

PHP'nin güvenli modunun etkinleştirilip etkinleştirilmeyeceğini belirler. Güvenlik ve Güvenli Mod bölümlerinden daha fazla bilgiye ulaşabilirsiniz.

safe_mode_exec_dir string

PHP güvenli modda kullanıldığında, system() ve diğer sistem dosyalarını çalıştıran uygulamalar, belirtilen klasörün dışında olmaları durumunda çalıştırılmayacaktır.

Ayıklayıcı Konfigürasyon Direktifleri

debugger.host string

Ayıklayıcı tarafından kullanılacak DNS ismini ya da IP adresini belirtir.

debugger.port string

Ayıklayıcı tarafından kullanılacak port numarasını belirtir.

debugger.enabled boolean

Ayıklayıcının etkinleştirilip etkinleştirilmeyeceğini belirtir.

Uzantı Yükleme Direktifleri

enable_dl boolean

Bu direktif sadece PHP Apache modülü olarak kullanıldığında anlam taşır. PHP uzantılarının dinamik olarak dl() ile yüklenmesini sanal sunucu ya da klasör bazında kısıtlayabilirsiniz.

Dinamik yüklemeyi kapatmanın ana gerekçesi güvenliktir. Dinamik yükleme ile, bütün safe_mode ve open_basedir kısıtlamalarının atlatılması mümkündür.

safe_mode haricinde öntanımlı işlem dinamik yüklemeye izin verilmesidir. Güvenli modda, dl() fonksiyonunu kullanmak her zaman imkansızdır.

extension_dir string

PHP'nin dinamik olarak yükleyebileceği uzantıları nerede araması gerektiğini belirler.

extension string

PHP başladığında hangi dinamik olarak yüklenebilir uzantıların yükleneceğini belirtir.

MySQL Konfigürasyon Direktifleri

mysql.allow_persistent boolean

MySQL sürekli bağlantısına izin verilip verilmeyeceğini belirtir.

mysql.default_host string

Veritabanı sunucusuna bağlanırken başka bir sunucu adresi belirtilmemişse kullanılacak öntanımlı sunucu adresini belirtir.

mysql.default_user string

Veritabanı sunucusuna bağlanırken başka bir kullanıcı ismi belirtilmemişse kullanılacak öntanımlı kullanıcı ismini belirtir.

mysql.default_password string

Veritabanı sunucusuna bağlanırken başka bir parola belirtilmemişse kullanılacak öntanımlı parolayı belirtir.

mysql.default_port string

Veritabanı sunucusuna bağlanırken başka bir TCP portu belirtilmemişse kullanılacak öntanımlı TCP portunu belirtir. Öntanımlı bir değer belirtilmemişse, port değeri MYSQL_TCP_PORT ortam değişkeninden, /etc/services içindeki mysql-tcp değerinden ya da derleme sırasındaki MYSQL_PORT değerinden aynı sıralamayla alınacaktır. Win32 altında yalnızca MYSQL_PORT sabiti kullanılır.

mysql.default_socket string

Veritabanı sunucusuna bağlanırken başka bir soket ismi belirtilmemişse kullanılacak öntanımlı soketi belirtir.

mysql.max_persistent integer

Process başına düşen en fazla sürekli MySQL bağlantısını belirtir.

mysql.max_links integer

Process başına düşen maksimum MySQL bağlantısını verir, sürekli bağlantılar dahildir.

mSQL Konfigürasyon Direktifleri

msql.allow_persistent boolean

mSQL sürekli bağlantılarına izip verilip verilmeyeceğini belirtir.

msql.max_persistent integer

Process başına olabilecek maksimum sürekli mSQL bağlantı sayısını belirtir.

msql.max_links integer

Process başına olabilecek maksimum mSQL bağlantı sayısını belirtir. Sürekli bağlantılar dahildir.

Postgres Konfigürasyon Direktifleri

pgsql.allow_persistent boolean

Postgres bağlantılarına izin verilip verilmeyeceğini belirtir.

pgsql.max_persistent integer

Process başına olabilecek maksimum sürekli Postgres bağlantısını belirtir.

pgsql.max_links integer

Process başına olabilecek maksimum Postgres bağlantı sayısını verir, sürekli bağlantılar dahildir.

SESAM Konfigüraston Direktifleri

sesam_oml string

Yüklenebilir SESAM sürücü modüllerini içeren BS2000 PLAM kütüphanesinin yerini belirtir. SESAM fonksiyonları için gereklidir. BS2000 PLAM kütüphanesi ACCESS=READ,SHARE=YES olarak ayarlanmalıdır çünkü Apache sunucusunun kullanıcısı tarafından okunması gereklidir.

sesam_configfile string

SESAM uygulama konfigürasyon dosyasının ismidir. SESAM fonksiyonları için gereklidir. BS2000 dosyası Apache sunucusunun kullanıcısı tarafından okunabilir olmalıdır.

Uygulama konfigürasyon dosyası genel olarak aşağıdaki konfigürasyonu içerir (SESAM referans kılavuzunu inceleyin):

CNF=B
NAM=K
NOTYPE

sesam_messagecatalog string

SESAM mesaj katalog dosyasının ismi. Birçok durumda, bu direktif gerekli değildir. Yalnızca SESAM mesaj dosyasının sistemdeki BS2000 mesaj dosya tablosuna yüklenmediği durumlarda bu direktif kullanılabilir.

Mesaj kataloğu ACCESS=READ,SHARE=YES olarak ayarlanmalıdır çünkü Apache sunucusunun kullanıcısı tarafından okunabilmelidir.

Sybase Konfigürasyon Direktifleri

sybase.allow_persistent boolean

Sybase sürekli bağlantılarına izin verilip verilmeyeceğini belirtir.

sybase.max_persistent integer

Process başına olabilecek maksimum sürekli Sybase bağlantısını belirtir.

sybase.max_links integer

Process başına olabilecek maksimum Sybase bağlantı sayısını belirtir, sürekli bağlantılar buna dahildir.

Sybase-CT Konfigürasyon Direktifleri

sybct.allow_persistent boolean

Sürekli Sybase-CT bağlantılarına izin verilip verilmeyeceğini belirtir. Öntanımlı değer on dur.

sybct.max_persistent integer

Process başına olabilecek en fazla sürekli Sybase-CT bağlantı sayısını belirtir. Öntanımlı değer -1 sınırsız anlamına gelir.

sybct.max_links integer

Process başına olabilecek en fazla Sybase-CT bağlantısını belirtir, buna sürekli bağlantılar dahildir. Öntanımlı değer -1 sınırsız anlamına gelir.

sybct.min_server_severity integer

sybct.min_server_severity değerine eşit ve daha yüksek olan sunucu mesajları uyarı olarak rapor edilecektir. Bu değer uygulama içinden sybase_min_server_severity() çağrılarak da ayarlanabilir. Öntanımlı değer 10'dur.

sybct.min_client_severity integer

sybct.min_client_severity değerine eşit ve daha yüksek olan istemci kütüphane mesajları uyarı olarak rapor edilecektir. Bu değer uygulama içinden sybase_min_client_severity() kullanılarak ayarlanabilir. 10 değeri verimli bir şekilde raporlamayı devre dışı bırakır.

sybct.login_timeout integer

Bir bağlantı denemesi için başarısız değeri dönene kadar beklenecek saniye cinsinden en fazla süreyi belirtir. max_execution_time aşılmışsa, uygulamanız başarısız durumuna düşmeden zaman aşımına uğrar. Öntanımlı değer bir dakikadır.

sybct.timeout integer

Bir select_db ya da sorgu işleminin tamamlanması için beklenecek en fazla süreyi saniye cinsinden belirtir. İşlem tamamlanamazsa başarısız döndürülür. İşlem zaman aşımına uğradığında max_execution_time değeri aşılmışsa, uygulamanız başarısız değerini döndüremeden sonlanacaktır. Öntanımlı değer sınırsızdır.

sybct.hostname string

sp_who tarafından görüntülenecek bağlantı kurulan makina ismini belirtir. Öntanımlı değer yoktur.

Informix Konfigürasyon Direktifleri

ifx.allow_persistent boolean

Sürekli Informix bağlantılarının kullanılıp kullanılmayacağını belirtir.

ifx.max_persistent integer

Process başına en fazla sürekli Informix bağlantısını belirtir. process.

ifx.max_links integer

Process başına en fazla sürekli Informix bağlantı sayısını belirtir, sürekli bağlantılar dahildir.

ifx.default_host string

ifx_connect() ya da ifx_pconnect() ile bir bağlantı adresi belirtilmediğinde kullanılacak öntanımlı adres değeridir.

ifx.default_user string

ifx_connect() ya da ifx_pconnect() ile bir kullanıcı id'si belirtilmediğinde kullanılacak öntanımlı kullanıcı id'sidir.

ifx.default_password string

ifx_connect() ya da ifx_pconnect() ile bir parola belirtilmediğinde kullanılacak öntanımlı paroladır.

ifx.blobinfile boolean

Blob sütunların dosya içine döndürülmesini istiyorsanız TRUE değerini, hafızaya döndürülmesini istiyorsanız FALSE değerini atayın. Bu seçeneği çalışma esnasında ifx_blobinfile_mode() fonksiyonunu kullanarak değiştirebilirsiniz.

ifx.textasvarchar boolean

Select cümlelerinde TEXT sütunların normal karakter dizileri olarak döndürülmesini istiyorsanız TRUE değerini, blob id parametrelerini kullanmak istiyorsanız FALSE değerini atayın. Bu seçeneği çalışma esnasında ifx_textasvarchar() fonksiyonunu kullanarak değiştirebilirsiniz.

ifx.byteasvarchar boolean

Select sorgularında BYTE sütunlarının normal karakter dizi değerler olarak döndürülmesini istiyorsanız TRUE değerini, blob id parametresi olarak kullanmak istiyorsanız FALSE değerini atayın. Bu seçeneği çalışma esnasında ifx_textasvarchar() fonksiyonu ile değiştirebilirsiniz.

ifx.charasvarchar boolean

CHAR sütunların çekilirken baştaki ve sondaki boşlukların temizlenmesini istiyorsanız TRUE değerini atayın.

ifx.nullformat boolean

NULL sütunların "NULL" karakter dizisi olarak döndürülmesini istiyorsanız TRUE değerini, boş "" değer olarak döndürülmesini istiyorsanız FALSE değerini atayın. Bu seçeneği çalışma esnasında ifx_nullformat() fonksiyonunu kullanarak değiştirebilirsiniz.

BC Math Konfigürasyon Direktifleri

bcmath.scale integer

Bütün bcmath fonksiyonları için noktadan sonra kullanılacak rakkam sayısını belirtir.

Tarayıcı Nitelik Konfigürasyon Direktifleri

browscap string

Tarayıcı nitelik dosyasının ismi. Ayrıca get_browser() fonksiyonunu inceleyin.

Tekilleştirilmiş ODBC Konfigürasyon Direktifleri

uodbc.default_db string

odbc_connect() ya da odbc_pconnect() ile belirtilmediği takdirde kullanılacak ODBC veri kaynağı.

uodbc.default_user string

odbc_connect() ya da odbc_pconnect() ile belirtilmemişse kullanılacak kullanıcı ismi.

uodbc.default_pw string

odbc_connect() ya da odbc_pconnect() ile belirtilmemişse kullanılacak parola.

uodbc.allow_persistent boolean

Sürekli ODBC bağlantılarına izin verilip verilmeyeceğini belirtir.

uodbc.max_persistent integer

Process başına en fazla sürekli ODBC bağlantı sayısını belirtir.

uodbc.max_links integer

Process başına en fazla ODBC bağlantı sayısını belirtir. Sürekli bağlantı sayısı dahildir.

Çoklu-Byte Karakter Dizisi Konfigürasyon Direktifleri

mbstring.internal_encoding string

mbstring.internal_encoding öntanımlı uluslararası karakter kodlamasını belirtir.

mbstring.http_input string

mbstring.http_input öntanımlı HTTP karakter giriş kodlamasını belirtir.

mbstring.http_output string

mbstring.http_output öntanımlı HTTP çıkış karakter kodlamasını belirtir.

mbstring.detect_order string

mbstring.detect_order öntanımlı karakter kodlaması tanıma sırasını belirtir.

mbstring.substitute_character string

mbstring.substitute_character hatalı karakter kodlarıyla değiştirilecek karakteri belirtir.



Language Reference> <Problemler?
Last updated: Sat, 17 Jul 2004
 
add a note add a note User Contributed Notes
Konfigürasyon
php at chrismonster dot com
27-Jul-2008 10:33
w2k, apache 1.3.29, php 5.2.6: c:\php\php.ini was not found until the environment variable PHPRC was set to "c:\php", even though php was used as a module, not CGI.

just adding c:\php to the path was not adequate.

phpinfo() still shows "Configuration File (php.ini) Path" to be C:\WINNT, but "Loaded Configuration File" now correctly displays "C:\php\php.ini".

initially the problem appeared to be simply that the mysql extension was not loading; in fact, the problem was more fundamental (php.ini not found) but because php will still work with defaults, this was not obvious.
pg_vlad at hotmail dot com
01-Jul-2008 09:41
On my Debian system I wrestled with something similar after apt-get ting updates for PHP and MYSQL, turns out the apt-get install worked great but broke my libphp module under apache. Once this module was deleted, I was able to rebuild it under PHP using ./configure

All works well now.
Anonymous
06-Feb-2008 02:03
Hello,

Having tried EVERYTHING on every php / mysql site to get php5.2.5 to talk to mysql server 5.0 (including all php.ini settings, all dlls, and many more ...)

Please try this: set Apache2.2 service Startup Type to MANUAL.  If not, it does not see to reload php.ini, no matter how many times you stop and start.

After 2 days, I finally see mysql info for <?php phpinfo(); ?>

Hope this helps!!
DK
jaw at jawspeak dot com - Jonathan Andrew Wolte
25-Jun-2007 05:01
Be sure to use double quotes in the php.ini file. For instance:

(lines broken for readability)

this will work:
# xdebug debugging
zend_extension="/usr/local/php5/lib/php/extensions
/no-debug-non-zts-20060613/xdebug.so"

this won't:
# xdebug debugging
zend_extension='/usr/local/php5/lib/php/extensions
/no-debug-non-zts-20060613/xdebug.so'

You'll get this error:
Failed loading '/usr/local/php5/lib/php/extensions/
no-debug-non-zts-20060613/xdebug.so':  (null)

So... double quotes are the way! I know this is obvious, but it's a good thing to remember for the php.ini file.
alvaro at demogracia dot com
16-Jun-2007 05:01
About Apache 2.0 module:

For whatever reason, the Windows installer for PHP/5.2.3 tries to set the PHPIniDir directive using "\\" as directory separator:

PHPIniDir "C:\\Archivos de programa\\PHP\\"

It didn't work for me until I edited httpd.conf and replaced it with "/":

PHPIniDir "C:/Archivos de programa/PHP/"
henrick at streamsec dot se
01-Apr-2007 05:07
In order to get PHP 5.2 stable running on Windows Server 2003 x64 (IIS 6.0), I discovered three things (in addition to the other comments above):

* Some PHP web applications make use of the SCRIPT_NAME server variable which is not available under CGI. You have to use php5isapi.dll, which is a 32 bit dll, so you have to run IIS in 32 bit mode. Confer http://support.microsoft.com/kb/894435. This applies to all ISAPI extensions and not just ASP.NET.

* It appears you must leave the doc_root entry in php.ini blank. At least, that is what finally made my installation work. (Note that others have suggested to set it to e.g. C:\inetpub\wwwroot or equivalent. That won't work if your server hosts more than one domain, each placed in a separate directory.)

* If you are e.g. using MySQL you will have to edit php.ini. In order for it to be found, you must set the PHPRC system environment variable or the registry entry. Note that if you edit the registry using regedit.exe, the PHP key should be placed under the [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node] key. This happens automatically if you set it using a 32 bit legacy application.
gprochnow AT PINT DOT COM
29-Mar-2007 01:19
Run php 4 and php 5.2.x on the same machine with IIS 6.0 as ISAPI.

1. Extract the ZIP packages of both php 4 & php 5 (not the Windows Installer) to c:\php4 & c:\php5 respectively

2. Setup the corresponding php.ini files in c:\php4 and c:\php5

3. Add the Web Service Extensions for php4 and php5. For php4 use c:\php4\sapi\php4isapi.dll, php5 use c:\php5\php5isapi.dll

4. Add the following registry keys:

HKEY_LOCAL_MACHINE\SOFTWARE\PHP\5\IniFilePath -> c:\php5

HKEY_LOCAL_MACHINE\SOFTWARE\PHP\IniFilePath -> c:\php4

5. Add c:\php4 to the PATH environment variable.

6. Associate each web site in IIS with the corresponding php version.

7. Reboot

Note: That should work, test with phpinfo() in each site. You may need to refer to the php documentation if we missed any other settings.
cduke420 at gmail dot com
07-Jan-2007 10:16
[ When php run as Apache Module ]
DOCUMENT_ROOT .htaccess
+======================================+
SetEnv PHPRC /home/user/dir-containing-phpinifile
+======================================+

[ When php run as CGI ]
Place your php.ini file in the dir of your cgi'd php binary, in this case /cgi-bin/
DOCUMENT_ROOT .htaccess
+======================================+
AddHandler php-cgi .php .htm
Action php-cgi /cgi-bin/php5.cgi
+======================================+

[ PHP run as cgi with wrapper (for FastCGI) ]
Your wrapper script should look something like:
+======================================+
#!/bin/sh
export PHP_FCGI_CHILDREN=3
exec /user/htdocs/cgi-bin/php.cgi -c /home/user/php.ini
+======================================+

original article:
http://www.askapache.com/2007/php/custom-phpini-tips-and-tricks.html
Alonso
18-Nov-2006 04:21
Setting php.ini location for PHP working as Apache module (without use SetEnv directive in httpd.conf):

Before start Apache, set the PHPRC environment variable to the path where php.ini should be loaded, for example:

    PHPRC=/etc/php4/apache-another-path
    export PHPRC

In Debian we can do this way:

    In /etc/init.d/apache (the script that loads apache web server) we have this line:

    ENV="env -i LANG=C PATH=/bin:/usr/bin:/usr/local/bin"

    Set to this:

    ENV="env -i LANG=C PATH=/bin:/usr/bin:/usr/local/bin PHPRC=/etc/php4/apache-another-path"

Then wen you reload apache the php.ini will be loaded in the directory configured in PHPRC environment variable.
Trevor Blackbird > yurab.com
11-Apr-2006 03:50
You can use also use the predefined PHP_SAPI constant instead of php_sapi_name().
c dot affolter at stepping-stone dot ch
13-Mar-2006 05:38
For those people who want to use the PHPRC environment variable:
You have to specify the path to the directory containing your php.ini, not the direct path to the php.ini.

Example (php.ini resides in /your/path/php.ini):
right:
export PHPRC=/your/path

wrong:
export PHPRC=/your/path/php.ini
randy AT rcs-comp DOT com
26-May-2005 12:47
(copied from another page)
Please note that the SetEnv PHPRC "directory/to/phpini/" only works when using PHP as CGI, but _not_ when you use the PHP Apache Module!
Jorrit Schippers
26-May-2004 04:33
For IIS users: If you experience high parsetimes, try to set output_buffering to On. IIS has problems with scripts outputting many small pieces of text, and with output_buffering = On, PHP sends the whole page to IIS in one piece.

Language Reference> <Problemler?
Last updated: Sat, 17 Jul 2004
 
 
show source | credits | stats | sitemap | contact | advertising | mirror sites