Yeni başlayanlar için php ini yapılandırma dosyası. PHP'yi yükleme ve yapılandırma. Farklı PHP ayar kümelerini kullanma

  • 03.11.2019

PHP, web siteleri oluşturmak için kullanılan en popüler programlama dillerinden biridir.

Dağıtım kitini resmi PHP sitesinden indirin http://www.php.net ( Sahibim - php 5.1.6 ). Arşivi C:\Program Files\php dizinine açın. Yapılandırma dosyasını bulun php.ini PHP yorumlayıcı ayarlarını içeren ve üzerinde aşağıdaki değişiklikleri yapın:

    Register_globals yönergesi php 5.1.6 varsayılan olarak etkin ( önerilen):

    register_globals = açık

    POST yöntemiyle gönderilen maksimum veri miktarını 16M olarak ayarlayın:

    post_max_size = 16M

    Çizgiyi bulun:

    ; include_path = ".; c: \ php \ içerir"

    yorumunu kaldır ( noktalı virgül karakterini kaldırmak için; satırın başında) ve şu şekilde düzeltin:

    include_path = ".; C: \ Program Dosyaları \ PHP \ PEAR"

    extension_dir parametresini PHP dağıtımının bulunduğu dizine eşit olarak ayarlamak gerekir:

    Extension_dir = "C: / Program Dosyaları / php / ext"

    Yüklenen dosyaların maksimum boyutunu 16M olarak ayarlayın:

    upload_max_filesize = 16M

    doc_root parametresi, Web sunucusu DocumentRoot yönergesinin değerini iletilmelidir:

    doc_root = "d: / ana / html"

    PHP uzantılarını kullanmanız gerekiyorsa, yorumu kaldırın ( noktalı virgül karakteri ; ) satırlarda:

    ; uzantı = php * .dll
    .
    .
    .
    ; uzantı = php * .dll

    PHP'nin düzgün çalışması için aşağıdaki uzantılar yeterlidir:

    Php_mbstring.dll - kütüphane, doğu dillerinin kodlamalarını içeren çok baytlı kodlamalarla çalışmak üzere tasarlanmıştır ( Japonca, Çince, Korece), Unicode ( UTF-8) ve benzeri.

    php_bz2.dll - uzantı, bzip2 formatında arşivler oluşturmak ve açmak için kullanılır.

    Php_curl.dll - çeşitli internet protokollerini kullanarak sunuculara bağlanmanıza ve bunlarla çalışmanıza olanak tanır.

    Php_gd2.dll - uzantı, grafiklerle çalışmanıza izin verir.

    Php_mysql.dll - kitaplığın MySQL sunucusuyla çalışması gerekir.

    Php_mysqli.dll - kitaplık php_mysql.dll dosyasının bir uzantısıdır. MySQL sunucusu sürüm 4.1.3 ve üzeri ile çalışmak için ek PHP işlevleri içerir.

    Parametre

    error_reporting = E_ALL & ~ E_NOTICE

    yorumlar hariç tüm hataları görüntülemenizi sağlar. Bu değer varsayılan olarak ayarlanmıştır ve bırakıyoruz.

    Ancak PHP 5 ( önceki sürümlerin aksine) tarayıcı penceresine bir dizi hata göndermez ( güvenlik gereksinimleri nedeniyle).

    Günlük dosyalarındaki hatalarla ilgili tüm bilgileri görüntüleyebilirsiniz. Bunları içine yerleştirmek için log_errors parametresi On olarak ayarlanmalıdır:

    log_errors = Açık

    Tarayıcı penceresine gönderilen hata mesajlarıyla Web uygulamalarında hata ayıklamak için display_errors parametresini ayarlayın:

    display_errors = Açık

    display_errors ve log_errors parametrelerinin kapalı olarak ayarlanması, sırasıyla tarayıcı penceresine ve günlük dosyasına hata mesajlarının çıkışını devre dışı bırakır.

    Direktif

    er r veya r _log = sistem günlüğü

    Windows sistem günlüğündeki hataları günlüğe kaydetmenizi sağlar.


    Çizgiyi bulun:

    session.save_path = "F: / ana / tmp"

    ve geçici dosyaların saklanacağı klasörün yolunu belirtin. C sürücüsünde bu Temp klasörüne sahibim:

    session.save_path = "C: / Temp"

    Geçici oturum dosyalarını saklamak için php dizininde ayrı bir Temp klasörü oluşturabilirsiniz. Sonra:

    session.save_path = "C: / Program Dosyaları / php / Temp"

    Apache web sunucusu yapılandırma dosyasında httpd.conf sanal ana bilgisayarları tanımlayan bloğun önüne aşağıdaki satırları ekleyin:

    AddType uygulaması / x-httpd-php phtml php

    Seçenekler ExecCGI

    Eylem uygulaması / x-httpd-php "/php_dir/php-cgi.exe"

Şimdi Apache sunucusunu yeniden başlatmanız ve PHP'nin çalışıp çalışmadığını kontrol etmeniz gerekiyor.

Bunu yapmak için d: / main / html dizininde bir test.php dosyası oluşturun. PHP dosyası oluşturmak için bir metin düzenleyici kullanabilirsiniz. Not defteri, herhangi bir küçük komut dosyası yazmanız gerekir, örneğin:

e c ho ("H e l o, PHP!");
?>

Tarayıcının adres çubuğuna http://localhost/test.php isteğini yazarken, satır

Merhaba, PHP!

Kurulum başarılı oldu!

php, php.ini dosyasında açıklanan birçok ayara sahiptir. Php'nin bu ayarları kullanabilmesi için bu dosyanın sistem arama yollarında mevcut olması gerekir. Genellikle, bu dosyayı php'nin bulunduğu dizinde saklamak yeterlidir, ancak php bir web sunucusu modülü olarak çalışacak şekilde yapılandırılmışsa, bu dosyanın sistem arama yollarında açıkça erişilebilir bir dizine kopyalanması gerekir. . Daha ayrıntılı talimatlar için php kurulum bölümüne bakın.

Kategoriye göre ayrılmış temel php seçeneklerini kapsar. Parametre listesi çoğunlukla php 4.0.6'dır, ancak burada sadece ana parametreler tartışılmıştır. Parametrelerin her biri hakkında yorumlar içeren tam bir listesi doğrudan php.ini'de ve ayrıca php kılavuzunun ilgili bölümünde görülebilir.

Evet/hayır seçenekleri ile parametre değerleri aşağıdaki gibi olabilir:

EVET - 1, açık, doğru veya evet
HAYIR - 0, kapalı, yanlış veya hayır

Short_open_tag

Steno php etiketleri için desteği etkinleştirme. Bu seçenek devre dışı bırakılırsa, php kodu yalnızca etiketlerin içinde tanınır. Etkinleştirilirse, etiketlerin kullanımına izin verilir. Steno php etiketlerini kullanmamak iyi bir uygulama olarak kabul edilir.

asp etiketi desteğini etkinleştirme<% %>php etiketleri olarak.

output_buffering

Arabelleğe alınmış php çıktısını etkinleştirin. Arabelleğe alınmış çıktıyı kullanmak, örneğin, betiğinizin herhangi bir yerinde http başlıklarında (başlık (), setcookie ()) çalışan herhangi bir işlevi, bundan önce herhangi bir çıktı almama endişesi duymadan kullanmanıza olanak tanır. php kılavuzundaki çıktı kontrol işlevleri bölümü) Çıktı arabelleğe alma etkinleştirildiğinde, komut dosyasından alınan çıktının yalnızca komut dosyası tamamlandıktan sonra tarayıcıya döndürüleceğini ve bunun daha yavaş bir siteye yol açabileceğini unutmayın.

Güvenli mod php'yi etkinleştirme. Güvenli mod, komut dosyalarının php çalıştıran sunucu için güvenli olmayan eylemleri gerçekleştirmesini engeller. PHP güvenli mod, php kılavuzunda ayrıntılı olarak tartışılmaktadır.

Maks_yürütme_zamanı

PHP betiğinin maksimum çalışma süresi (saniye cinsinden). Bu süreden sonra, komut dosyası zorla sonlandırılacak ve ilgili bir hata verilecektir. "Döngü" komut dosyalarıyla ilgili sorunları önler.

Komut dosyasının ihtiyaçları için ayrılabilecek maksimum bellek miktarı. Ayrıca "döngü" komut dosyalarıyla ilgili sorunları da önler.

Error_reporting

Php tarafından oluşturulacak hata mesajları için maske. Çeşitli hata türlerini tanımlayan bir dizi önceden tanımlanmış sabit kullanılarak mantıksal bir ifade olarak belirtilir. Bu sabitlerin bir listesi ve ifadeleri belirleme kuralları php.ini'de bulunabilir.

Display_errors

Ekranda hata mesajlarının görüntülenip görüntülenmeyeceğini belirler. Genellikle bu seçenek php scriptleri yazarken hata mesajlarını görebilmek için açılır ancak internetteki gerçek sunucularda güvenlik nedeniyle genellikle kapatılır.

Bu seçenek etkinleştirilirse, tüm hatalar bir sonraki seçenek tarafından belirtilen günlük dosyasına yazılacaktır.

Php tarafından oluşturulan tüm hata mesajlarının yazılacağı yol ve dosya adı. Sistem hata günlüğünü destekleyen sistemlerde, tüm hata mesajlarını oraya yönlendirmek için bu parametrenin değerini syslog olarak ayarlayabilirsiniz.

Bu seçenek etkinleştirilirse, son hatanın metni her zaman $ php_errormsg değişkeninden erişilebilir olacaktır.

Register_globals

Bu parametre, sözde olup olmadığını belirler. egpcs değişkenleri (environment, get, post, cookie, session) global php değişkenleri olarak mevcuttur. Bu parametreye izin verilirse, değişkenlerin bu değişkenlere erişimi, diğer php global değişkenleriyle aynı şekilde gerçekleştirilecektir:


Eko "http protokolünün sürümü:"... $ sunucu_protokolü;
Eko "Parametre sorgu dizesi:"... $param1;
echo "Form öğesi:". $ txtad;
echo "Çerezlerim:". $ çerezim;
Eko. $ mysessionvar;

Veya aynı, ancak seçenek devre dışıyken:


Eko "http protokolünün sürümü:"... $ http_env_vars ["sunucu_protokolü"];
Eko "Parametre sorgu dizesi:"... $ http_get_vars ["param1"];
echo "Form öğesi:". $ http_post_vars ["txtfirstname"];
echo "Çerezlerim:". $ http_cookie_vars ["mycookie"];
Eko "Oturum değişkenlerim:"... $ http_session_vars ["mysessionvar"];

İlk bakışta bu daha az kullanışlıdır, ancak bu seçeneği devre dışı bırakmanın avantajları vardır:

Php biraz daha hızlı çalışmaya başlar çünkü birden fazla değişken oluşturmak için fazladan zaman harcanmaz.
Herhangi iki değişkenin aynı ada sahip olma riski yoktur, bu da betikte hatalara yol açar ve bunların belirgin olmaması nedeniyle yakalanması çok zor olacaktır.
değişkenler_düzeni

Bu parametre, önceki parametre ile birlikte kullanılır ve global epcs değişkenlerinin hangi sırayla kaydedileceğini belirler. Örneğin, varsayılan (egpcs) ile, gönderiden geçen aynı ada sahip değişkenler, get üzerinden geçen değişkenlerin üzerine yazılacaktır. değişkenleri gönder (çevre ve değişkenlerin yanı sıra), sırayla, aynı ada sahip çerezler vb. tarafından geçersiz kılınabilir.

Magic_quotes_gpc

Bu parametrenin etkinleştirilmesi, istemciden (get, post veya cookie yoluyla) alınan tüm verilerin işlenmesine neden olacaktır: içlerindeki tüm tırnak işaretleri ("ve"), sırasıyla "veya" kombinasyonu ile değiştirilecektir. Bir yandan, örneğin, bu verileri örneğin sql sunucusuna iletilen dizelere eklemeyi planlıyorsanız, bu çok uygundur. Öte yandan, bu kafa karıştırıcı olabilir, bu nedenle genellikle bu amaç için addslashes () ve stripslashes () kullanmak daha güvenlidir.

Magic_quotes_runtime

Bu parametre, sunucu tarafında bulunan harici kaynaklardan gelen verileri (örneğin, sql sunucusundan gelen veriler veya harici programların sonuçları) etkilemesi dışında bir öncekine benzer.

Magic_quotes_sybase

Bu seçeneğin etkinleştirilmesi, tek tırnakların (") iki katına çıkmasına (" ") neden olur. Bu, yalnızca dizelere bu şekilde tırnak eklemeyi destekleyen bazı sql sunucuları için gereklidir (interbase, ms sql, sybase ve diğerleri).

Auto_prepend_file

Her php betiğinin başına otomatik olarak eklenecek olan dosyanın yolunu ve adını ayarlamanıza izin verir. Yalnızca boş olmayan bir değere sahipse kullanılır.

Auto_append_file

Önceki parametreyle aynıdır, ancak dosya içeriğinin eklenmesi her php betiğinin sonunda yapılır.

PHP modüllerinin bulunduğu dizinin yolu. Bu genellikle php kök dizini altındaki extensions alt dizinidir.

PHP başlatıldığında yapılandırma dosyası (php.ini) okunur. PHP'nin sunucu modülü sürümleri için bu, web sunucusu başlatıldığında yalnızca bir kez olur. CGI ve CLI sürümleri için her çağrıda gerçekleşir.

php.ini şu konumlarda aranır (sırasıyla):

  • SAPI modülüne özel konum ( PHPIniDir Apache 2'deki yönerge, -C CGI ve CLI'de komut satırı seçeneği, php_ini NSAPI'deki parametre, PHP_INI_PATH THTTPD'deki ortam değişkeni)
  • PHPRC ortam değişkeni. PHP 5.2.0'dan önce bu, aşağıda belirtilen kayıt defteri anahtarından sonra kontrol edildi.
  • PHP 5.2.0'dan itibaren, php.ini dosyası PHP'nin farklı sürümleri için ayarlanabilir. Kayıt defteri anahtarlarının kökü, kurulu işletim sisteminin ve PHP'nin 32 veya 64 bitliğine bağlıdır. 32 bit işletim sisteminde 32 bit PHP veya 64 bit işletim sisteminde 64 bit PHP kullanımı için [(HKEY_LOCAL_MACHINE \ YAZILIM \ PHP] 64 bit işletim sistemi kullanımında PHP'nin 32 bit sürümü için ] Bunun yerine. Aynı bitlik kurulumu için aşağıdaki kayıt defteri anahtarları sırayla incelenir: , ve , burada x, y ve z PHP majör, minör ve yayın sürümleri anlamına gelir. 64 bit işletim sisteminde PHP'nin 32 bit sürümleri için aşağıdaki kayıt defteri anahtarları sırayla incelenir: , ve , burada x, y ve z PHP majör, minör ve yayın sürümleri anlamına gelir. için bir değer varsa Dosya Yolu bu anahtarlardan herhangi birinde, ilk bulunan anahtar konumun yeri olarak kullanılacaktır. php.ini(Yalnızca Windows).
  • veya , değeri Dosya Yolu(Yalnızca Windows).
  • Geçerli çalışma dizini (CLI hariç).
  • Web sunucusunun dizini (SAPI modülleri için) veya PHP dizini (aksi takdirde Windows'ta).
  • Windows dizini (C:\windows veya C:\winnt) (Windows için) veya --with-config-dosya-yolu derleme zamanı seçeneği.

php-SAPI.ini varsa (burada SAPI kullanımda olan SAPI'dir, yani örneğin php-cli.ini veya php-apache.ini), php.ini yerine kullanılır. SAPI adı ile belirlenebilir php_sapi_name().

Apache web sunucusu, başlangıçta dizini kök olarak değiştirir ve PHP'nin, varsa, kök dosya sisteminden php.ini'yi okumaya çalışmasına neden olur.

Ortam değişkenlerini kullanmak, aşağıda gösterildiği gibi php.ini'de kullanılabilir.

Örnek # 1 php.ini Ortam Değişkenleri

; PHP_MEMORY_LIMIT, memory_limit = $ ortamından alınmıştır (PHP_MEMORY_LIMIT)

Uzantılar tarafından işlenen php.ini yönergeleri, uzantıların ilgili sayfalarında belgelenmiştir. Temel direktiflerin bir listesi ekte mevcuttur. Tüm PHP yönergeleri bu kılavuzda mutlaka belgelenmemiştir: PHP sürümünüzdeki yönergelerin tam listesi için lütfen iyi yorumlanmış php.ini dosyanızı okuyun. Alternatif olarak Git'ten de yararlı bulabilirsiniz.

Örnek # 2 php.ini örneği

; tırnak içine alınmamış noktalı virgülden (;) sonra satırdaki herhangi bir metin yoksayılır; bölüm işaretleri (köşeli parantez içindeki metin) de yok sayılır; Boole değerleri şunlardan birine ayarlanabilir:; doğru, evet; veya yanlış, kapalı, hayır, yok register_globals = off track_errors = evet; dizeleri çift tırnak içine alabilirsiniz include_path = ".: / usr / local / lib / php"; ters eğik çizgiler, diğer herhangi bir karakter ile aynı şekilde değerlendirilir include_path = ".; c: \ php \ lib"

PHP 5.1.0'dan beri, mevcut .ini değişkenlerine .ini dosyaları içinden başvurmak mümkündür. Örnek: open_basedir = $ (open_basedir) ": / yeni / dir".

Dizinleri tara

PHP'yi php.ini okuduktan sonra bir dizindeki .ini dosyalarını tarayacak şekilde yapılandırmak mümkündür. Bu, derleme zamanında ayarlanarak yapılabilir. --with-config-file-scan-dir seçenek. PHP 5.2.0 ve sonraki sürümlerde, tarama dizini çalışma zamanında PHP_INI_SCAN_DIR ortam değişkeni ayarlanarak geçersiz kılınabilir.

Platforma özel yol ayırıcı ile ayırarak birden fazla dizini taramak mümkündür ( ; Windows, NetWare ve RISC OS'de; : diğer tüm platformlarda; PHP'nin kullandığı değer şu şekilde mevcuttur: PATH_SEPARATOR devamlı). PHP_INI_SCAN_DIR içinde boş bir dizin verilirse, PHP ayrıca derleme zamanında verilen dizini aracılığıyla tarar. --with-config-file-scan-dir .

Her dizinde PHP ile biten tüm dosyaları tarar. .ini alfabetik sıraya göre. Arayarak yüklenen dosyaların listesi ve hangi sırayla kullanılabilir? php_ini_scanned_files () veya PHP ile çalıştırarak --ini seçenek.

PHP'nin --with-config-file-scan-dir = / etc / php.d ile yapılandırıldığını ve yol ayırıcının şöyle olduğunu varsayarsak: ... $ php PHP tüm dosyaları /etc/php.d/* içine yükler .ini yapılandırma dosyaları olarak. $ PHP_INI_SCAN_DIR = / usr / local / etc / php.d php PHP, /usr/local/etc/php.d/*.ini içindeki tüm dosyaları yapılandırma dosyaları olarak yükler. $ PHP_INI_SCAN_DIR =: / usr / local / etc / php.d php PHP tüm dosyaları /etc/php.d/*.ini, ardından /usr/local/etc/php.d/*.ini dizinine, yapılandırma dosyaları olarak yükler ... $ PHP_INI_SCAN_DIR = / usr / local / etc / php.d: php PHP tüm dosyaları /usr/local/etc/php.d/*.ini dizinine, ardından /etc/php.d/*.ini dizinine yapılandırma dosyaları olarak yükler ...

Değişiklik günlüğü

Sürüm Açıklama
7.0.0 Karma işaretleri ( # ) artık yorum olarak tanınmaz.
5.3.0 Karma işaretleri ( # ) artık yorum olarak kullanılmamalıdır ve kullanılırsa bir kullanımdan kaldırma uyarısı verir.
5.2.0 PHP_INI_SCAN_DIR ortam değişkeni, yapılandırma komut dosyası aracılığıyla ayarlanan tarama dizini geçersiz kılmak için ayarlanabilir.
5.1.0 .ini dosyaları içerisinden mevcut .ini değişkenlerine başvurmak mümkündür.

Son güncelleme: 16/12/2017

İhtiyacınız olan tüm yazılımları yüklemenin farklı yolları vardır. Bileşenleri ayrı ayrı kurabiliriz veya Denwer veya EasyPHP gibi hazır montajları kullanabiliriz. Bu tür montajlarda, bileşenler zaten ilk yapılandırmaya sahiptir ve site oluşturmaya zaten hazırdır. Bununla birlikte, er ya da geç, geliştiricilerin hala diğer modülleri bağlayarak ayrı bileşenleri kurmaya ve yapılandırmaya başvurmaları gerekir. Bu nedenle, tüm bileşenleri ayrı ayrı kuracağız. İşletim sistemi olarak Windows kullanılacaktır.

PHP kurulumu neleri içerir? Öncelikle bir PHP yorumlayıcısına ihtiyacımız var. İkinci olarak, oluşturduğumuz sitenin kaynaklarına erişebileceğimiz bir web sunucusuna, örneğin Apache'ye ihtiyacımız var. Üçüncüsü, veritabanlarını kullanacağımız için bir çeşit veri tabanı yönetim sistemi de kurmamız gerekecek. Bu nedenle MySQL, PHP ile birlikte en popüler olarak seçildi.

PHP'yi kurmak için geliştiricinin site dışı http://php.net/ adresine gidin. İndirme sayfasında Linux işletim sistemi için çeşitli dağıtımlar bulabiliriz. İşletim sistemimiz Windows ise http://windows.php.net/download/ adresinden paketlerden birini indirmemiz gerekiyor.

En son PHP sürüm zip paketini indirin:

Tipik olarak, en son PHP sürümünün iki sürümü vardır: Non Thread Safe ve Thread Safe. Thread Safe sürümünü seçmemiz gerekiyor. Bu sürüm için, 32 bit ve 64 bit sistemler için varyantlar mevcuttur.

İndirilen arşivi php adını vereceğimiz bir klasöre açın. Bu klasörün C sürücüsünün kökünde bulunmasına izin verin.

Şimdi bazı minimal PHP yapılandırması yapmamız gerekiyor. Bunu yapmak için c:\php dizinine gidin ve oradaki dosyayı bulun php.ini-geliştirme... Bu, yorumlayıcı için ilk yapılandırma dosyasıdır. Bu dosyayı php.ini olarak yeniden adlandıralım ve ardından bir metin düzenleyicide açalım.

Dosyadaki satırı bulun:

; extension_dir = "dahili"

Bu satır PHP eklentilerinin bulunduğu dizine işaret eder. Yorumunu kaldıralım (noktalı virgülü kaldırın):

Extension_dir = "dahili"

Tüm uzantılar ext dizinde olduğundan.

MySQL veritabanlarını kullanacağımız için php.ini içerisinde uzantıyı belirtmemiz gerekiyor. Varsayılan olarak, dosyada zaten bulunur, yalnızca yorumlanır:

; uzantı = mysqli

Noktalı virgülü kaldırarak yorumunu kaldıralım:

Uzantı = mysqli

Şimdi, varsayılan olarak, bir veritabanı ile çalışırken bu kitaplık kullanılacaktır. Gerekirse diğer uzantıların yorumunu da kaldırabiliriz. Ama başlangıç ​​için bir tane bize yeter.

Dosya içeriğinin geri kalanını değiştirmeden bırakın.

Şimdi web sunucusunu kuralım.

Kurs, üzerinde oluşturulan site yöneticilerinin temel eğitimi için tasarlanmıştır. "1C-Bitrix: Site Yönetimi"... Kursu tamamladıktan sonra, sistem yönetiminin temel yöntemlerinde ustalaşacak ve kursta çalışılan konular hakkındaki bilgilerinizi tazeleyeceksiniz. İçerik yöneticisi.

Kursu dikkatli bir şekilde incelerseniz, şunları öğreneceksiniz:

  • sisteme, sitelere, kullanıcılara, kullanıcı gruplarına erişimi yönetmek;
  • sistem araçlarıyla çalışın;
  • sistemi yönetmek için arayüzün yeteneklerini kullanmak;
  • sitenin optimizasyonu ve güvenliği ile ilgili "1C-Bitrix: Site Yönetimi" modülleriyle çalışmak;
  • optimum performans için web sistemini yapılandırma işini yapın.

Sistemi kendiniz kurmanız veya siteyi barındırmaya aktarmanız gerekiyorsa, kurs olmadan Kurulum ve konfigürasyon İyi Kurulum ve konfigürasyon"1C-Bitrix: Site Yönetimi" veya "Bir kutuda Bitrix24" kurulumu yapan uzmanlara yöneliktir.

Ders materyallerini CHM formatında indirin.

Eğitim kursu nasıl alınır?