Windows ostida PHP o'rnatilgan. PHPni o'rnatish va sozlash Php 5 ni o'rnatish 3

Golovna / Nalashtuvannya

Va bugun biz bu haqda gaplashamiz PHP o'rnatish. Xuddi Apache kabi, bu erda izchil hech narsa yo'q. Qanday qilib band bo'lasiz PHP ni o'rnating va o'rnating mahalliy mashinada, keyin siz ushbu qo'llanmani rasmlar bilan o'qishingiz mumkin bo'ladi. Agar siz ularning o'ng tomonida qattiq bizonni ko'rsangiz, bu eslatmani xavfsiz o'tkazib yuborishingiz mumkin.

Bundan tashqari, siz ushbu postni o'qiyotgan bo'lishingiz kerak, aks holda siz avval PHP ni o'rnatasiz, aks holda sizda o'rnatish jarayonida yoki PHP ni o'rnatishda ba'zi muammolar / muammolar mavjud. Jarayonni aniqroq tasvirlashga harakat qilaman.

Bizga birinchi marta PHP ning eng so'nggi versiyasidan tarqatish to'plami kerak. Yoga rasmiy saytidan - www.php.net (9,5 Mb) dan olinishi mumkin.

Biz kompyuterga tarqatish to'plamini o'rnatamiz, geografik jihatdan sizga eng yaqin bo'lgan oynani tebratamiz

Arxivni jildga o'tkazamiz C:/php5. Xo'sh, bilaman, shuning uchun siz avval Apache havolasini o'rnatasiz -PHP-MySQL Men ko'rsatgan yo'llar uchun o'rnatishni tavsiya etaman.

Ota, da C:/php5 siz buni yoqtirishingiz mumkin:

PHP-ni sozlash tugallandi, endi yoga sozlamalariga o'tamiz.

Fayl nomini o'zgartiring php.ini tavsiya etiladi ichida php.ini:

  • faylni tanlang
  • F2 tugmasini bosing
  • aftidan - tavsiya etiladi
  • Enter tugmasini bosing.

Endi faylni bloknotda oching va buni qilaylik PHP moslashtirish. Fayl ko'p sonli PHP yangilanishlari uchun topshirilishi kerak, ammo bizga bir vaqtning o'zida yoqimsiz hid kerak emas. PHP ni mahalliy kompyuterda ishga tushirish uchun biz oddiy sozlashlarni amalga oshiramiz.

Nalashtuvan faylining tavsifi formati haqida ko'p narsa emas

';' belgisi qatorlar izohlanganligini bildiradi (xush hid xavfsiz emas). Masalan:

; ignore_user_abort = Yoqilgan

Guruhlarga bo'linish sozlamalarini qanday eslab qolishingiz mumkin, aniqlik uchun faylni qidirish. Masalan, resurslar almashinuvini yaxshilash:

;;;;;;;;;;;;;;;;;;;;;;
; resurslar chegaralari;
;;;;;;;;;;;;;;;;;;;;;;

maksimal_bajarish_vaqti = 30; Har bir skriptning maksimal bajarilish vaqti, soniyalarda
maksimal_kiritish_vaqti = 60; Har bir skript so'rov ma'lumotlarini tahlil qilish uchun sarflashi mumkin bo'lgan maksimal vaqt
; max_input_nesting_level = 64; Maksimal kiritish oʻzgaruvchan joylashtirish darajasi
xotira chegarasi = 128M; Skript iste'mol qilishi mumkin bo'lgan maksimal xotira hajmi (128 MB)

Parametrlar va ularning qiymatlarini tavsiflash formati:

im'ya_changeable = vv_value

PHP modullarini moslashtirish.

Bo'lim toping Dinamik kengaytmalar(Dinamik kengayish). PHP uchun modullarning ajoyib ro'yxati mavjud:

;extension=php_bz2.dll
;extension=php_curl.dll
;extension=php_dba.dll
;extension=php_dbase.dll
;extension=php_exif.dll
;extension=php_fdf.dll
;extension=php_gd2.dll
;extension=php_gettext.dll
;extension=php_gmp.dll
;extension=php_ifx.dll
;extension=php_imap.dll
;extension=php_interbase.dll
;extension=php_ldap.dll
;extension=php_mbstring.dll
;extension=php_mcrypt.dll
;extension=php_mhash.dll

;extension=php_ming.dll
;extension=php_msql.dll
;extension=php_mssql.dll
;extension=php_mysql.dll
;extension=php_mysqli.dll
;extension=php_oci8.dll
;extension=php_openssl.dll
;extension=php_pdo.dll

;extension=php_pdo_mssql.dll
;extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_oci8.dll
;extension=php_pdo_odbc.dll
;extension=php_pdo_pgsql.dll

;extension=php_pgsql.dll
;extension=php_pspell.dll
;extension=php_shmop.dll
;extension=php_snmp.dll
;extension=php_soap.dll
;extension=php_sockets.dll
;extension=php_sqlite.dll
;extension=php_sybase_ct.dll
;extension=php_tidy.dll
;extension=php_xmlrpc.dll
;extension=php_xsl.dll

Teri moduli ulanganda, u juda ko'p operatsion xotirani egallaydi. Robotlar uchun faqat o'sha modullar kiritilgan, chunki ular bizga albatta kerak va agar kerak bo'lsa, ularni yoqishga qaror qilishimiz mumkin.

Modulni ulash uchun qator oldidan ';' belgisini ko'rishingiz kerak. Ushbu darajada dunyo ketma-ket sharhlaydi va modul g'alaba qozonadi.

Keling, qo'shiling PHP kengaytmasi grafikali robototexnika uchun - php_gd2.dll(kelajakdan bizga ko'proq kerak bo'ladi).

Schob PHP zmíg kengaytmalarni qayerda yotqizishni biladi, ehtimol ularga yo'l. Keyingi qatorni ulanishni kengaytirishga yoki undan keyin qo'shing. Natijada siz shunga o'xshash narsani ko'rishingiz mumkin:

;;;;;;;;;;;;;;;;;;;;;;
; Dinamik kengaytmalar;
;;;;;;;;;;;;;;;;;;;;;;
;
; Agar siz avtomatik ravishda yuklangan kengaytmaning onasi bo'lsangiz, oyoqlaringizni uring
; sintaksis:
;
; kengaytma = modul nomi. kengaytma
;
; Masalan, Windows-da:
;
; extension=msql.dll
;
; … yoki UNIX ostida:
;
; extension=msql.so
;
; E'tibor bering, u faqat modul nomi bo'lishi kerak; katalog ma'lumotlari yo'q
; bu yerga borish kerak. bilan kengaytmaning joylashuvini belgilang
; Yuqoridagi extension_dir direktivasi.

; Windows kengaytmalari
; Iltimos, ODBC qo'llab-quvvatlashi o'rnatilganligini unutmang, shuning uchun yangisi uchun DLL talab qilinmaydi.
; Shuni yodda tutingki, siz ko'plab DLL fayllarini kengaytmalarda topasiz/ (PHP 4) ext/ (PHP 5)
; kengaytmali papkalar, shuningdek alohida PECL DLL yuklab olish (PHP 5).
; Belgilangan kengaytma_dir direktivasiga qadar tanlang.

extension_dir="C:/php5/ext"

;extension=php_bz2.dll
;extension=php_curl.dll
;extension=php_dba.dll
;extension=php_dbase.dll
;extension=php_exif.dll
;extension=php_fdf.dll
extension=php_gd2.dll
;extension=php_gettext.dll
;extension=php_gmp.dll
;extension=php_ifx.dll
;extension=php_imap.dll
;extension=php_interbase.dll
;extension=php_ldap.dll
;extension=php_mbstring.dll
;extension=php_mcrypt.dll
;extension=php_mhash.dll
;extension=php_mime_magic.dll
;extension=php_ming.dll
;extension=php_msql.dll
;extension=php_mssql.dll
;extension=php_mysql.dll
;extension=php_mysqli.dll
;extension=php_oci8.dll
;extension=php_openssl.dll
;extension=php_pdo.dll
;extension=php_pdo_firebird.dll
;extension=php_pdo_mssql.dll
;extension=php_pdo_mysql.dll
;extension=php_pdo_oci.dll
;extension=php_pdo_oci8.dll
;extension=php_pdo_odbc.dll
;extension=php_pdo_pgsql.dll
;extension=php_pdo_sqlite.dll
;extension=php_pgsql.dll
;extension=php_pspell.dll
;extension=php_shmop.dll
;extension=php_snmp.dll
;extension=php_soap.dll
;extension=php_sockets.dll
;extension=php_sqlite.dll
;extension=php_sybase_ct.dll
;extension=php_tidy.dll
;extension=php_xmlrpc.dll
;extension=php_xsl.dll
;extension=php_zip.dll

Biz o'zimiz tomonidan o'zgarishlar haqida qayg'uramiz. Zararni to'xtatishimiz uchun Apache-ni qayta tiklash kerak.

PHP ni o'rnatish va sozlash yakunlandi!

Yak bakit - hech narsa katlanmaydi. Agar jarayonda sizga boshqa kengaytmalar kerak bo'lsa, kerakli kengaytmalar bilan qatorga izoh qoldiring (o'xshash php_gd2.dll) va Apache-ni qayta sozlang.

Kelgusi postda men sizga havola orqali PHP va Apache-ni qanday mashq qilishni o'rganishni aytib beraman.

PHP veb-saytlar va veb-qo'shimchalar yaratish uchun eng mashhur dasturlash tillaridan biridir. Bloglar, kompaniyalar uchun veb-saytlar yoki onlayn-do'konlarni topish uchun juda ko'p tayyor tarkibni boshqarish tizimlari mavjud. O'z kamchiliklari bo'lishi mumkin bo'lganlardan qat'i nazar, uni o'zlashtirish oson va bundan tashqari, u ko'pincha yangi saytlarni ishlab chiqish uchun ishlatiladi.

Php tarjimoni php-fpm xizmati kabi buyruq satridan skriptlarni boshqaradigan Apache uchun modul sifatida taqdim etilishi mumkin. Ushbu xizmatlar o'zlarining qobiliyatlari va tan olinishidan ilhomlangan, ammo har qanday tarjimon uchun sozlash kerak asosiy sozlash, masalan, ishlaydigan papka, kengayish ortdi, avflar oshdi va hokazo. Barcha o'rnatishlar php.ini fayli orqali o'rnatiladi. Ushbu ko'rsatmada biz php.ini faylini operatsion tizimda qanday tuzatishni ko'rishimiz mumkin Linux tizimlari, Windows uchun barcha ma'lumotlarni pídyyde i istayman.

Agar sizda hali php kino tarjimoni oʻrnatilmagan boʻlsa, ushbu maqolani oʻqishingiz mumkin.

Tarjimonning teri versiyasi uchun php.ini konfiguratsiya fayli mahalliy papkada joylashgan. Hammasi konfiguratsiya fayllari/etc/php papkasida joylashgan, masalan, /etc/php5:

conf.d papkasi Zagalni nalashtuvannya boshqa kengaytmalar va modullar uchun badbo'y hid bizni birdaniga urmaydi. Uchta papka mavjud - apache, cli va fpm. jild s tsikh tarjimonlar uchun hid mistyatsya php.ini konfiguratsiya fayllari.

Agar siz ushbu tarjimonlardan spratni tanlasangiz, uni teri kremi uchun qanday tuzatishni o'rganishingiz kerak bo'ladi. Siz teri papkasida php.ini faylining joylashuvini o'zgartirishingiz mumkin.

Fayl sintaksisiga kelsak, keyin bo'limlarga bo'linishlar, bu erda php bo'limi o'rnatiladi, chunki u noto'g'ri turdagi bo'limlarga bo'linadi, bo'limlar turli modullarni o'rnatish uchun o'rnatiladi. Sintaksisning o'zi yanada soddalashtirilgan, ammo ini fayllarining asosiy sintaksisiga amal qiladi. Qator sozlama nomidan boshlanadi, keyin keyingi belgi teng bo'ladi, undan keyin qiymat keladi:

im'ya_nalashtuvannya = parametr_qiymati

Belgilar bo'lim nomiga beriladi, masalan, lekin belgi; izohni bildiradi, bundan tashqari barcha belgilar va keyin tarjimon tomonidan o'qilmaydi. Va endi php.ini-ni qanday tuzatish va eng muhim parametrlarni saralashni ko'rib chiqamiz.

php.ini faylini moslashtirish

Aniqlik uchun yo'nalish toifalar uchun barcha parametrlar noto'g'ri va tan olinganligi bilan belgilanadi. Siz uchun kerakli parametrni bilish va uning qiymatini o'zgartirish kifoya. Endi, masalan, apache moduli uchun PHP faylini oching va konfiguratsiyaga o'tamiz. Kechirim olish uchun yangi qatorlarni qo'shmang, shunchaki tekshirishni davom eting va ehtiyojlar uchun qiymatni o'zgartiring:

sudo gedit /etc/php5/apache/php.ini

Sharhlarga qaraganimda faylning o'zi haqida ozgina ma'lumotga egaman, keyin biz uni o'zimiz uchun aylantiramiz.

php dan kechirimlarni ko'rish

PHP 7 konfiguratsiyasi kechirimli konfiguratsiyadan boshlanadi. Kechirim soʻrovlarini koʻrsatish sozlamalari Xatolarni qayta ishlash va jurnalga yozish boʻlimida joylashgan. Zamovchuvannyam uchun skriptni bir soat tomosha qilish uchun ekranda kechirim ko'rish olib tashlandi. Koristuvachi hech narsa zayvogo qilolmasligi uchun uni sindirishdi. Barcha kechirimlarni almashtirish jurnal faylida qayd etiladi. Qanday qilib php-ni yutib olasiz uy kompyuteri, keyin siz kirishingiz shart emas va siz darhol hamma narsani ekranda ko'rsatishingiz mumkin:

display_errors=off

Yoqilg'i holatiga o'zgartiring. php teglangan turli xil turlari afvlar, masalan, tanqidiy kechirimlar, afv etishlar, sintaksik avflar, error_reporting qatorining yordami uchun siz bir nechta turdagi kechirimlarni ko'rsatishni yoqishingiz mumkin:

error_reporting = E_ALL & ~E_DEPRECATED

Agar kechirim turlarini birlashtirish kerak bo'lsa, & belgisini oqlang va kechirishni yoqish uchun turning oldiga ~ belgisini qo'ying. Barcha afvlar (E_ALL) ko‘rsatish uchun, balki eskirgan funksiyalar (E_DEPRECATED) haqida eslatish uchun ko‘proq maslahat beradi. Siz barcha turlarni yoqishingiz mumkin, vicorist 0:

error_reporting=0

Fayl fayliga PHP pardons yozishni yoqing, shuning uchun ularni ekranda ko'rsatmang:

Jurnalni bir xil turdagi eslatmalar bilan aralashtirib yubormaslik uchun siz bitta vikonannya chegarasida kechirimlarning takrorlanishini e'tiborsiz qoldirishingiz mumkin:

ignore_repeated_errors = Yoqilgan

Resurs almashinuvi

Yakbi PHP skriptlari resurslarda ajratilmagan, keyin badbo'y hid serverni osongina bosib olishi va sizga oddiy pratsyuvati bermasligi mumkin. Buning uchun php-ni blokirovka qilish uchun biz qattiq almashinuvni o'rnatamiz, lekin, ehtimol, ularni biroz bo'shatish kerak.

Bloklash uchun skriptni yozish uchun maksimal soat 30 soniyani tashkil qiladi, aytaylik:

maksimal_bajarish_vaqti = 30

Agar siz 0 ni kiritsangiz, skript cheksiz muddatga o'chirilishi mumkin. Bundan tashqari, ma'lumotlarni olish uchun skriptni uzaytirish orqali soatni belgilashingiz mumkin, 60 soniya:

maksimal_kiritish_vaqti=60

GET va POST uchun maksimal o'zgarishlar soni:

max_input_vars = 1000

Keyingi parametr o'rnatiladi maksimal raqam Esingizda bo'lsin, siz megabaytlarda g'alaba qozonganingizning bir soati uchun bitta skriptni yengishingiz mumkin:

xotira chegarasi = 128M

POST so'rovida uzatiladigan ma'lumotlarning maksimal miqdori ham almashtiriladi, blokirovka qilish hajmi 8 MB:

post_max_size=8M

Openbase_dir qo'shimcha opsiyasi uchun tizimdagi dííí php maydonini o'rab olishingiz mumkin, siz papkani ko'rsatasiz, yaku skripti uchun ko'proq kirishingiz mumkin emas. fayl tizimi:

open_basedir = /var/www/

Disable_functions va disable_class direktivalari yordamida siz skriptlarda yorliqni yoqishingiz mumkin. kuylash funktsiyalari aks holda, masalan, veb-xosting uchun foydalanish mumkin. Ushbu ilovada biz ini_set funksiyasini yoqamiz, bu sizga skriptdan php sozlamalarini o'zgartirish imkonini beradi:

disable_functions = ini_set

Qulflash uchun kataloglar

Php.ini xususiylashtirish fayli boshqa bizneslar uchun reklama aktsiyalari uchun fayl tizimidagi yoʻllarni belgilash imkonini beradi. Tizim shukatime skriptlari uchun papkalarni o'rnatishingiz mumkin, shuning uchun ularni qo'shimcha ko'rsatmalar uchun ulashga urinib ko'rishingiz mumkin:

include_path = ".:/usr/share/php5:/usr/share/php5/PEAR"

PHP modulli papka:

extension_dir="./"

Vaqt fayllarini yozib olish uchun papka:

sys_temp_dir = "/tmp"

Muxbirlar o'z fayllarini, masalan, fotosuratni serverga yuklashlari uchun php-da ushbu funktsiyani yoqishingiz kerak:

file_uploads = Yoqilgan

Foydalanadigan faylning maksimal hajmi:

upload_max_filesize = 2M

Fayllarning maksimal soni, shuning uchun siz bitta skriptni olishingiz mumkin:

max_file_uploads = 20

Php.ini-ni sozlash amalda tugallandi, biz ko'proq kengaytmalarni yo'qotdik.

Kengaytirilgan kengayish

Kengaytmalar php ning yanada ko'proq funksionalligini ta'minlaydi. Masalan, siz asosiy skriptlaringizda kengaytmalarni sozlashingiz mumkin danih mysql, postgresql, mysqli, sqlite, gd grafik kutubxonasi va boshqalar. Hamma narsa bir vaqtning o'zida yoqiladi.

Kengaytirishni oshirish uchun birinchi buyruq bilan qatordan oldin izoh qo'shish kifoya, masalan:

extension=php_mysql.so
extension=php_mbstring.so
extension=php_pgsql.so

hurmat qiling windows kengaytmasi matime dll formati, lekin Linux uchun undan foydalanish kerak. Kelgusi bo'limlarda terining kengayishining yamog'i bor, lekin biz ularni ko'rmaymiz, chunki hid yamoqqa o'xshaydi.

Visnovki

Ushbu maqolada biz serverda php-ni qanday tuzatishni ko'rib chiqdik ajoyib kompyuter veb-saytlar yaratish uchun. Fayl nalashtuvan PHP dosit mumkin oddiy tuzilish Va u bilan buni tugatish oson emas. Barcha sozlashlarni bajarib, o'zgarishlarni saqlaganingizdan so'ng, veb-server yoki php-fpm xizmatini qayta sozlashni unutmang.

Ko'rinishidan, php-fpm yaxshi mavzu, chunki kelgusi maqolalardan birida ko'plab qo'shimcha yaxshilanishlar mavjud va, ehtimol, tinch yo'l bilan. Agar ovqatingiz tugab qolsa, izohlarda so'rang!

Muallif ID: bir biluvchi (ko'proq "qiyshiq meister") virishiv shafani mustaqil ravishda tanlaydi. Natijada, ko'p yillik azoblardan so'ng, Yangi Viishovning po'lati qolmadi. Eksa shunday metamorfozga aylandi. Bunday holatga tushib qolmaslik uchun PHP ni qanday qilib to'g'ri o'rnatishni ko'rib chiqamiz.

Busiz PHP bilan shug'ullanish mumkin emas

- Faqat til emas, balki server. Kino tarjimonini oddiy o'rnatish orqali bu etarli bo'lmaydi. Shunday qilib, kodni o'zingiz buzishingiz mumkin shaxsiy kompyuter, sizga mahalliy server kerak.

xuddi shunday yaxshilik butun dunyo o'rgimchakka vistachaê. Biz serverlardan ortiqcha ish va qisqa muddatli terini parvarish qilish bilan shug'ullanmaymiz. Keling, uzoq vaqtdan beri barcha PHP dasturchilari bilan bog'langan Apache versiyasini o'rnatish jarayonini tasvirlab beraylik.

Ushbu mahsulotning tarixi Vikipediyada tasvirlangan. Apachening takabburligi "zhorst" Viktoriya taqdiri bilan tasdiqlanganligi sababli, siz buni isbotlash uchun qimmatli soatingizni sarflamaysiz. Keling, uni o'zingiz o'rnatishga harakat qilaylik php server Windows ostida kompyuterda.

Biz "Hind" ni o'rnatamiz

Keling, hindlarning Apache qabilasidan serverning bosqichma-bosqich o'rnatilishini ko'rib chiqaylik:

Biz Apache.org saytiga o'tamiz, o'ng tomondagi menyuda "Yuklab olish" tugmasini bosing. Agar shunday bo'lsa, ushbu ro'yxatda oynani kengaytmalar.msi (Windows uchun odatiy format) bilan o'rnatish kerakmi va versiya 2.2 dan past emasmi yoki yo'qligini tanlash kerak.

Loyiha ochiq manba bo'lganligi sababli, serverning shaxsiy tanlovi darhol o'sdi. Qaerga borishni bilmasangiz, ushbu manzilga boring. Bu oynada Apache-ning turli versiyalarini yuklab olish mumkin.

So'rovdan so'ng biz video uchun o'rnatish paketini ishga tushiramiz. O'rnatish tartibi standart: pogozhu'emosya z aqllari vikoristannya, o'sha server domeniga kazuemo ím'ya, aziz administrator. Potim "Keyingi".

PHP o'rnatilishi kerak bo'lgan katalogni belgilang Apache server.

I chekaêmo, dasturiy ta'minotni o'rnatish jarayoni tugallanganda. Apache o'rnatgan katalogga o'ting. Papalik konfiguratsiyasida httpd.conf ma'lum va bu yaxshi. Biz "Hammasidan rad eting" qatorini bilamiz va ushbu direktivaga izoh beramiz. Ushbu darajada biz server himoyalanganligini bilamiz, bu mahalliy Apache ombori uchun zarur emas. Bu barcha papkalarga, shu jumladan virtual papkalarga kirish imkonini beradi. Agar siz hech narsa bilmasangiz, dastur, agar siz biron bir katalogga kirishga harakat qilsangiz, "403" afv bo'limiga qarang.

Barcha o'zgarishlarni saqlang va serverni qayta ishga tushiring.

PHP ga o'tish

Biz php.net saytiga o'tamiz va tarqatish to'plamining "86" versiyalaridan birini olamiz (men yaxshiroq himoyalanganman). Keling, uni server bilan bir xil diskdagi keyingi papkada ochamiz. Men filmning barcha parametrlarini to'liq tasvirlab bermayman, shuning uchun uni o'zgartirishingiz mumkin. Bu haqdagi hisobotni ilova qilingan texnik hujjatlarda o'qishingiz mumkin.

Shuni ta'kidlashni istardimki, barcha PHP parametrlari php.ini faylida o'rnatilgan. V_dkrivaêtsya har qanday muharrir (zokrema va bloknot) yordamida. Men butun fayl orqali o'rnatiladigan tez-tez tanlangan parametrlarning yorliqlarining tavsifini beraman:

post_max_size - POST usuli yordamida bir vaqtning o'zida qayta ishlanishi mumkin bo'lgan ma'lumotlarning maksimal miqdorini belgilaydi.

upload_max_filesize - yuklanishi mumkin bo'lgan fayllarning maksimal hajmi.

default_charset - yordam uchun berilgan parametr promosyon orqasida PHP da utf 8 kodlashni kiritish mumkin.

Endi, to'liq baxt uchun, httpd.conf-ga bir qator qator qo'shish endi mumkin emas. Bizning yordamimiz bilan biz Apache moduli sifatida ishlash uchun PHP ni mahalliy serverga ulaymiz. "Uy" onglarida kodni yozish va sinab ko'rish uchun qancha vaqt ketadi. Fayl o'rtasida keyingi bo'sh joy qatorlarini belgilang:

LoadModule php5_module - PHP/php5apache2_2.dll-ni o'rnatish usuli - kutubxonani o'z ichiga oladi, uning yordami uchun tarqatish to'plami modul sifatida yutadi.

PHPIniDir "php.ini/" fayliga yo'l (masalan, PHPIniDir "F:/php-5.3.5/") - so'zsiz tushuniladi.

AddType ilovasi/x-httpd-php phtml php PHP fayllari va mime-turi (application/x-httpd-php).

Xo'sh, yak? Nalashtuvannya vmagaê soat, bu vminnyani hurmat qiling. Va siz allaqachon "shafa" ni tanlash osonroq ekanligini hech qanday tarzda o'ylamadingiz. Agar siz bizning sxemamizdan foydalanmoqchi bo'lsangiz, PHP, server va DBMSni o'z ichiga olgan tayyor paketdan foydalanishingiz mumkin. Men Denver haqida gaplashayotganimizni angladim. Zavdyaki youmu niyaka "shafa" faxivtsyaning "nozik" qo'llari ostida qandaydir "po'lat" yoki "ko'rpa stoli" ga aylantirilmaydi.

Linuxda veb-serverni sozlash:

  • Agar sizda Ubuntu bo'lsa, "Ubuntu 16.10 da PHP 7, MariaDB/MySQL va phpMyAdmin (LAMP) bilan Apache veb-serverini qanday o'rnatish kerak" maqolasiga amal qilishingiz kerak.
  • Agar sizda Arch Linux bo'lsa, "Arch Linux/BlackArch-da LAMP (Linux, Apache, MySQL/MariaDB, PHP7 va phpMyAdmin) o'rnatish" maqolasini o'qishingiz kerak.

mahalliy server ko'proq jigarrang vosita. Vin, albatta, veb-ustalar, PHP dasturchilari, penetratsion testerlar uchun yaxshi. Oddiy veb-serverni o'rnatishdan oldin kiradigan barcha dasturlar bepul, ularda haqiqiy chiqish kodi mavjud. Mahalliy veb-serverning minimal resurslari tugaydi va uni o'rnatish va yangilash juda muhim emas.

Tsya ínstruktsyya rozpovíst pro stanovleniâ mahalliy veb-server vykoristannya yig'ma brik holda. Tsej sposíb maê perevagi. Eng muhimlari: siz o'rnatganingiz ko'proq nazoratga ega; o'zingizni g'alaba qozonish qobiliyati boshqa versiyalar dasturiy ta'minot xavfsizligi.

Agar siz ko'rsatmalarga amal qilishingizga ishonchingiz komil bo'lsa, unda siz hamma narsani buyurtma qilishingiz kerak bo'ladi! Krim jim, kimda Windows XP bor - bu sizga qanday yoqadi operatsion tizim, keyin sizga maxsus ko'rsatma berildi.

Men sizga Windows 10 da o'rnatish misolini ko'rsataman, aks holda sizda boshqasi bor Windows versiyasi, Keyin sizni urishingizga yo'l qo'ymang - protsedura bir xil. Men dasturlarning versiyasini yozish vaqtida qolgan (hozir) zavantazhuvatimu qilaman. O'sha soatga kelsak, agar siz o'qisangiz, yangi versiyalarni ko'ring, keyin o'zingizni zavantazhivayte í̈x.

O'rnatish bosqichlari:

Shuningdek, siz quyidagilardan foydalanishingiz mumkin:

1. Tayyorlash (serverga kirish uchun dasturlarni tayyorlash, server strukturasini yaratish)

Bizga kerak:

  • Apache(oraliq bo'lmagan veb-server)
  • PHP- robotlar uchun o'rta PHP dasturi(Deyarli barcha veb-saytlar tomonidan talab qilinadi)
  • MySQL- ma'lumotlar bazasini boshqarish tizimi (ko'proq veb-saytlar uchun kerak)
  • phpMyAdmin- ma'lumotlar bazasini boshqarish uchun juda qulay vosita

Apache sotuvchilarining rasmiy sayti httpd.apache.org hisoblanadi. Apache-ni istalgan saytdan sotib olishingiz mumkin. ale rasmiy versiya zbiraetsya s vekoristannyam eski kompilyator, u PHP ning yangi versiyalari bilan ishlamaydi. PHP mualliflari Apache-ni apachelounge.com/download saytida tavsiya qiladi. Shuning uchun, ushbu ko'rsatma uchun Apache-ning o'zi apachelounge.com/download saytida mavjud.

Agar sizda Windows-ning 64-bitli versiyasi bo'lsa, siz 64-bit va 32-bit komponentlar o'rtasida tanlashingiz mumkin. Smut qoidasi shundaki, barcha komponentlar bir xil darajada bo'lishi kerak. Agar sizda Windows-ning 32-bitli versiyasi bo'lsa, barcha komponentlar 32-bit bo'lishi kerak. Bu mening PHP skriptim bo'lgan phpMyAdmin-ga tushmaydi. PHP uchun dastur bitness zastosovuêtsya emas tushunadi.

MySQL ning bepul versiyasi deyiladi MySQL hamjamiyat serveri. Yon tomondan zavantazhiti mumkin. Boshqa tomondan, o'rnatuvchi yuklab olinayotgan faylga qaraydi, lekin ZIP-arxivlarni yuklab olishni tavsiya qilaman. Qiziqish tomonida, ro'yxatdan o'tishni yoki realga borishni aytishimiz kerak jismoniy rekord- Ale tse robiti neobov'yazkovo. Kuchni bosish kifoya " Yo'q, rahmat, yuklab olishni boshlang". Beatnistni hurmat qiling.

Bizga hali ham C++ qayta taqsimlanadigan Visual Studio 2017 fayli kerak. Siz Visual Studio 2017 uchun Visual C++ komponentini kengaytirishingiz mumkin (yoki u boshqa yangiroq versiya boʻlsin), uni Microsoft rasmiy veb-saytidan haq evaziga yuklab olishingiz mumkin (64-bitli versiyani yuklab olish uchun toʻgʻridan-toʻgʻri yuklab olish; 32-bitli versiyani yuklab oling). Ushbu fayl veb-server uchun talab qilinadi. MySQL uchun esa Visual Studio 2015 uchun mavjud bo'lgan zarur Visual C ++ paketlari. Siz uni orqali olishingiz mumkin.

Otzhe, men quyidagi fayllarni oldim:

  • httpd-2.4.29-Win64-VC15.zip
  • php-7.2.0-Win32-VC15-x64.zip
  • mysql-8.0.11-winx64.zip
  • phpMyAdmin-4.7.6-all-languages.zip
  • vc_redist.x64.exe
  • vcredist_x64.exe

Fayllarni o'rnating vc_redist.x64.exeі vcredist_x64.exe.

2. Web server strukturasini qurish

Serverimizning katalog strukturasini yaratamiz. Asosiy g'oya - fayllar va sayt fayllarini ma'lumotlar bazalari bilan almashish. Bu serverga texnik xizmat ko'rsatish, zaxira nusxasi uchun qulay.

Diskning ildizida C:\ katalog yaratish server. Ushbu katalog uchun 2 ta subkatalog yarating: bin(Viconan fayllari uchun) va ma'lumotlar.

Katalogga o'ting ma'lumotlar va u erda papkalarni yarating D.B.(ma'lumotlar bazalari uchun) htdocs(Veb-saytlar uchun).

Katalogga o'ting C:\Server\data\DB\ va u erda bo'sh papka yarating ma'lumotlar.

3. Apache 2.4 ni o'rnating

Vmíst zavantazhennogo arhívu (aniqrog'i, faqat katalog Apache24), qadoqdan ochish c: serverbin.

Katalogga o'ting c:\Server\bin\Apache24\conf\ va faylni oching httpd.conf matn muharriri bo'ling.

Biz uchun past qatorlarni almashtirish kerak.

SRVROOT "c:/Apache24" ni aniqlang

SRVROOT ni aniqlang "c:/Server/bin/Apache24"

#ServerName www.example.com:80

server nomi localhost

DocumentRoot "$(SRVROOT)/htdocs"

DocumentRoot "c:/Server/data/htdocs/"

DirectoryIndex index.html

DirectoryIndex index.php index.html index.htm

# AllowOverride .htaccess fayllariga qanday direktivalar joylashtirilishini nazorat qiladi. # Bu "Hammasi", "Yo'q" yoki kalit so'zlar birikmasi bo'lishi mumkin: # AllowOverride FileInfo AuthConfig Limit # AllowOverride None

# AllowOverride .htaccess fayllariga qanday direktivalar joylashtirilishini nazorat qiladi. # Bu "Hammasi", "Yo'q" yoki kalit so'zlar birikmasi bo'lishi mumkin: # AllowOverride FileInfo AuthConfig Limit # AllowOverride All

#LoadModule rewrite_module modules/mod_rewrite.so

LoadModule rewrite_module modules/mod_rewrite.so

Faylni saqlang va yoping. Mana, Apache sozlamalari tugallandi! Ushbu tomonda o'zgartirilgan teri direktivasi tavsifini topasiz.

Vijdonli buyruq qatori(Buni bir vaqtning o'zida Win + X tugmachalarini bosish orqali qilishingiz mumkin). U erda tanlang Windows PowerShell(administrator) va u yerdan nusxa ko'chiring:

C:\Server\bin\Apache24\bin\httpd.exe -k o'rnating

Apache xavfsizlik devoridan so'rashingiz kerak bo'lganda, "Ruxsat berish" tugmasini bosing.

Endi buyruq qatoridan oldin kiriting:

C:\Server\bin\Apache24\bin\httpd.exe -k boshlang

i Enter tugmasini bosing.

Yak im'ya koristuvacha ildiz orqali kiritiladi. Parol maydoni bo'sh qoldiriladi. Agar hamma narsa to'g'ri ajratilgan bo'lsa, unda hamma narsa quyidagicha ko'rinishi mumkin:

7. G'alaba serveri va ma'lumotlarning zaxira nusxasi

Katalozda c:\Server\data\htdocs\ papkalar va fayllar yaratish, masalan:

c:\Server\data\htdocs\test\ajax.php - bu fayl, shubhasiz, http://localhost/test/ajax.php va hokazo manzilda mavjud bo'ladi.

Barcha saytlar va ma'lumotlar bazalarining to'liq zaxira nusxasini yaratish uchun katalogni nusxalash kifoya C:\Server\data\.

Modullarni yangilashdan oldin, papkalarni zaxiralang bin- muammolar oqlangan taqdirda, oldingi versiyalarga osongina qaytishingiz mumkin.

Serverni qayta o'rnatishda yoki u yangilanganda konfiguratsiya fayllarini qayta sozlash kerak bo'ladi. Agar sizda ushbu fayllarning nusxalari bo'lsa, jarayon sezilarli darajada tezlashishi mumkin. Keyingi fayllarni zaxiralang:

  • c:\Server\bin\Apache24\conf\httpd.conf
  • c:\Server\bin\mysql-8.0\my.ini
  • c:\Server\bin\PHP\php.ini
  • c:\Server\data\htdocs\phpMyAdmin\config.inc.php

Ular barcha sozlamalarni saqlaydi.

8. Yaxshilangan PHP

PHP endi qattiqroq, yumshoq va qulay vositadir. Ustida mahalliy kompyuter Yangisi yordamida siz turli xil vazifalarni o'zgartirishingiz mumkin, tilni veb-sahifalarni yaratish bilan bog'lamaysiz. Favqulodda vazifalar bundan mustasno, siz o'rnatishlarda o'rnatilgan birjaga kirishingiz mumkin. Sozlamalar php.ini faylida joylashgan (c:\Server\bin\PHP\php.ini) Keling, ularni ko'rib chiqamiz:

xotira chegarasi = 128M

maksimal xotira hajmini o'rnating, shuning uchun siz skriptdan foydalanishingiz mumkin

Post_max_size=8M

POST usuli bilan bir soatlik quvvat uchun qabul qilinadigan ma'lumotlarning maksimal miqdorini belgilang

;default_charset = "UTF-8"

kodlashni o'rnatish (qulflash uchun, sharhlar qatori)

Upload_max_filessiz = 2M

serverga yuklanadigan faylning maksimal hajmi. O'rnatishlar soni hatto kichik - atigi ikki megabayt. Misol uchun, ma'lumotlar bazasi phpMyAdmin'dan olinganda, 2 megabaytdan katta faylni olish mumkin emas, dock bu elementni o'zgartirmaydi.

Max_fayl_uploads = 20

bir vaqtning o'zida yuklab olinadigan maksimal fayllar soni

Maksimal_bajarish_vaqti = 30

bitta skript uchun maksimal soat

Sozlamalarni o'zgartirish mutlaqo neobov'yazkovo, lekin ular haqida bilish yaxshi.

9. phpMyAdmin yaxshilandi

Biz allaqachon phpMyAdmin va yetarlicha asosiy funksiyalarni yaxshilaganmiz. Tim dan kam emas boshlang'ich tomoni phpMyAdmin yozgan: "phpMyAdmin qo'shimchalari yangi dunyoda yangilanmagan, ba'zi funksiyalar yoqilgan."

Yangi imkoniyatlar ê:

  • (pov'yazanimi) jadvallar orasidagi havolalarni ko'rsatish;
  • jadvallar haqida ma'lumot qo'shish (2.3.0 versiyasidan boshlab kursorni tegishli tugma ustiga bosgan holda, ustun har soat uchun taklifnomada qanday ko'rsatilishini "table_info" maxsus jadvalida tasvirlashingiz mumkin);
  • PDF sxemasini yaratish (2.3.0 versiyasidan boshlab phpMyAdmin da yaratishingiz mumkin) PDF tomonlari jadvallaringiz orasidagi aloqalarni ko'rsatish uchun);
  • stublarning sharhlarini kiriting (2.3.0 versiyasidan boshlab, siz teri stoli uchun teri pog'onasi tavsifi bilan izoh kiritishingiz mumkin. Noxush hid "da ko'rinadi. oldinga qarang do'st uchun". 2.5.0 versiyasidan boshlab sharhlar joylashtiriladi vlasnyh tomonlar jadvallar qayta ko'rib chiqish rejimida, ustunlar ustidagi maslahatlar (vakolatlar jadvallari) yoki qayta ko'rib chiqish rejimida jadvallar sarlavhalarida ko'rsatiladi. Xushbo'y hidni axlatxona jadvallarida ko'rsatish mumkin);
  • xatcho'plar yaratish (2.2.0 versiyasidan boshlab, phpMyAdmin foydalanuvchilarga so'rov bo'yicha xatcho'plar yaratish imkonini beradi. Shuningdek, so'rovlar uchun xatcho'plar yaratishingiz mumkin, ular ko'pincha xatcho'p qilinadi);
  • SQL so'rovlar tarixi (2.5.0 versiyasidan boshlab barcha tarixingizni saqlashingiz mumkin SQL so'rovlari, phpMyAdmin interfeysi orqali yaratilgan);
  • dizayner (2.10.0 versiyasidan boshlab, Dizayner vositasi mavjud; u jadvallar orasidagi havolalarni vizual ravishda o'zgartirish imkonini beradi);
  • yaqinda topilgan jadvallar haqida ma'lumot;
  • interfeysni tez-tez jadvallar bilan sozlash;
  • zip (3.3.x versiyasidan boshlab, mavjud zip mexanizmi mavjud. U phpMyAdmin tomonidan buzilganidek, teri SQL buyrug'ini ishga tushirishga yordam beradi. Ishni yozib olish buyruqlarni yozadigan ma'lumotlar tomonidan qo'llab-quvvatlanadi. Agar yoqilgan bo'lsa, siz ishlashingiz mumkin. jadval versiyasi bilan);
  • koristuvachni moslashtirish (3.4.x versiyasidan boshlab, phpMyAdmin koristuvachlarga qo'shimcha sozlashlarni o'rnatish va ularni ma'lumotlar bazasidan saqlash imkonini beradi);
  • sozlangan menyular (4.1.0 versiyasidan boshlab siz menyu elementlari guruhlarini yaratishingiz mumkin, ular faqat menyu elementlari uchun mavjud bo'ladi. Koristuvach bir guruhgacha bo'lgan qiymatlarga va ushbu guruh uchun ko'proq yoki kamroq menyu elementlariga ega bo'lishi mumkin);
  • navigatsiya nuqtalarini yashirish/ko'rsatish (4.1.0 versiyasidan boshlab siz navigatsiya daraxtida nuqtalarni yashirishingiz/ko'rsatishingiz mumkin).
  • va boshqalar

INFEKTSION mi nalashtuemo qi qo'shimcha qobiliyat butunlay tinchlik. http://localhost/phpmyadmin/chk_rel.php saytiga o'ting va "Ma'lumotlar bazasini yaratish" tugmasini bosing. Keyin barcha yangi funksiyalar faollashadi.

Yangi funksiyalarning Dekilka skrinshotlari:

1) Dizayner

2) Stejeniya

10. O'rnatilgan post vilkasi

C:\Server\bin\ da Sendmail nomli yangi katalog yarating. Endi, qaysi katalog uchun, o'rniga quyidagi bilan sendmail.php faylini yarating:

#!/usr/bin/env php

PHP konfiguratsiya faylini oching, bu yerda joy egalari C:\Server\bin\PHP\php.ini. Men u erda bitta qator qo'shaman:

Sendmail_path = "C:\Server\bin\PHP\php.exe C:\Server\bin\Sendmail\sendmail.php --dir C:\Server\bin\Sendmail\emails"

Faylni saqlang va serverni qayta ishga tushiring. Aslida, endi barcha yuborilgan varaqlar katalogda saqlanadi C:\Server\bin\Sendmail\emails\

Barglarning matimut kengayishi .eml va í̈x ni, masalan, dastur yordamida yaratish mumkin Momaqaldiroq. Abo ajoyib matn muharriri.

11. PHP katalogini Windows tizimidagi PATHga qo'shing

Aks holda, ba'zi PHP modullari, jumladan php_curl.dll, php_intl.dll, php_ldap.dll, php_pdo_pgsql.dll va php_pgsql.dll bilan bog'liq muammolar bo'lishi mumkin. Serverni ishga tushirishda qabul qilingan, jurnallarda quyidagilar ko'rsatiladi:

PHP Ogohlantirish: PHP ishga tushirilishi: "C:\Server\bin\PHP\ext\php_curl.dll" dinamik kutubxonasini so'rang - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\ xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef \xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\ xbf\xbd\xef\xbf \xbd.\r\n Noma'lum 0-qatorda PHP Ogohlantirish: PHP ishga tushirilishi: "C:\\Server\\bin\\PHP\\ext\\php_intl.dll" - \xef\xbf\ Dinamik kutubxonani bosing. xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\ xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef \xbf\xbd\xef\ xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd. C:\Server\bin\PHP\ext\php_ldap.dll" - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\ xbd\xef\xbf \xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xb d\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\ xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\ xef\xbf\xbd\xef\xbf\xbd.\r\n Noma'lum on line 0 PHP Ogohlantirish: PHP ishga tushirilishi: "C:\\Server\\bin\\PHP\\ext\\php_pdo_pgsql .dll" dinamik kutubxonasini qattiq yuklab oling - \xef\xbf\xbd\xef\xbf\xbd \xef\ xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf \xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\ xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\ xef\xbf\xbd\xef\xbf\xbd.library "C:\Server\bin\PHP\ext\php_pgsql.dll" - \xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef \xbf\xbd\xef\ xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf \xbd\xef\xbf\ xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd\xef\xbf\xbd \xef\xbf\ xbd. \r\n Noma'lum 0-qatorda

Ulardan oldindan uzoqlashish uchun tizimni o'zgartirish muhitiga PHP yo'lini qo'shish kerak.

Ishga tushirish tugmasini bosing (yoki u erda Windows 10 qanday chaqiriladi?), Yozishni boshlang " Tizimli ommaviy axborot vositalarining o'zgarishi» deb vydkryte vydpovídne vykno nalashtuvan.

U erda "bosing" O'rtani o'zgartirish»:

Viknida " Tizim o'zgarishlari» toping va ustiga bosing Yo'l, keyin " tugmasini bosing O'zgartirish»:

Tepalikning tepasida P_dn_m_t yozuvi:

O'zgarishlarni tejashdan barcha oynalarni yoping.

Serverni qayta ishga tushiring.

12. Muzlatish, trafikni kuchaytirish va/yoki serverni kechirish Asinxron AcceptEx muvaffaqiyatsiz tugadi

Natijada, sizning serveringiz navigatsiyasiz "muzlab qoladi" - u qayta ishga tushirilgunga qadar veb-sahifalarni ko'rsatmaydi, lekin kechirimli server jurnallarida Asinxron AcceptEx muvaffaqiyatsiz tugadi:

AH00455: Apache/2.4.9 (Win64) PHP/5.5.13 konfiguratsiya qilingan -- normal operatsiyalarni davom ettirish -d C:/Server/bin/Apache24" AH00418: Ota-ona: Yaratilgan bola jarayoni 4952 AH00354: Childer: Ishni boshlash 64 (. OS 64) OS 64) Belgilangan im'merezhí endi mavjud emas. : AH00341: winnt_accept: Asinxron AcceptEx bajarilmadi. endi mavjud emas. : AH00341: winnt_accept: Asinxron AcceptEx amalga oshmadi. (OS 64) Belgilangan birlashma endi mavjud emas. : AH00341: winnt_accept: Asinxron AcceptEx bajarilmadi. (OS 64) Belgilangan birlashma endi mavjud emas. : AH00341: winnt_accept: Asinxron AcceptEx bajarilmadi.

Keyin Apache konfiguratsiya faylini qo'shing:

AcceptFilter http yo'q AcceptFilter https yo'q EnableSendfile o'chirilgan EnableMMAP o'chirilgan

13. Windows tizimidagi Apache veb-serverida cURL ni sozlash

Agar cURL nima ekanligini bilmasangiz, sizga kerak emas. Tobto. jasorat bilan butun krokni o'tkazib yuboring.

cURL - bu masofaviy serverlar bilan ma'lumotlarni almashish imkonini beruvchi, hatto ko'p sonli protokollarda ham g'alaba qozonish imkonini beruvchi konsol yordam dasturi. cURL cookie-fayllarni o'rnatishi va autentifikatsiyani qo'llab-quvvatlashi mumkin. Agar sizga veb-yuklab olish uchun cURL kerak bo'lsa, uni zaxiralarda ko'rsatish mumkin. Ko'pgina mashhur dasturlar uchun cURL kerak emas, masalan, phpMyAdmin va WordPress uchun cURLni amalga oshirishning hojati yo'q.

Agar cURL noto'g'ri sozlangan bo'lsa, siz kechirim olasiz:

Muhim xato: aniqlanmagan curl_multi_init() funksiyasini chaqirish ...

pardon curl: SSL sertifikati muammosi: mahalliy emitent sertifikatini ololmadi

Windows-da Apache-da cURL-ni ishga tushirish uchun sizga kerak bo'ladi:

1) Obov'yazkovo PHP katalogini PATHga qo'shing (tizim muhitini o'zgartirish). Qanday qilib tse zrobiti ko'proq aytiladi:

2) faylda C:\Server\bin\PHP\php.ini sharhlar qatori bo'lishi mumkin kengaytma = jingalak

Ovoz kerak emas, lekin buning uchun siz serverning ikkilik fayllarining zaxira nusxasini yaratishingiz mumkin. Barcha fayllar papada c: serverbin. Tse Apache, MySQL va PHP - tobto. dasturlari, server ishi uchun yaki vydpovydat, lekin yakí mi be-agar biz rasmiy saytlardan foydalanishimiz va yangilashimiz mumkin.

Agar siz zaxira nusxasini yaratmoqchi bo'lsangiz (masalan, serverni yangilashdan oldin), xizmatlarni ishga tushiring:

C:\Server\bin\Apache24\bin\httpd.exe -k stop net stop mysql

Jildni xavfsiz joyga nusxalash c: serverbin.

Nutqdan oldin siz butun serverni tobto sifatida nusxalashingiz mumkin. papka C:\Server\- bir vaqtning o'zida zaxira nusxasini va yuklab olingan fayllarni va ma'lumotlarni (ma'lumotlar bazalari, saytlar) olish uchun.

Nusxalash tugallangach, xizmatlarni qayta ishga tushiring:

C:\Server\bin\Apache24\bin\httpd.exe -k start net start mysql

15. Server yangilanishi

Veb-serverni tashkil etuvchi barcha komponentlar faol ishlab chiqilib, yangi versiyalari muntazam ravishda chiqariladi. Yangi versiya chiqarilganda siz bitta komponentni (masalan, PHP) yoki yangisini yangilashingiz mumkin.

17. Men uchun hech narsa ishlamaydi

Ushbu ko'rsatmalar muntazam ravishda ko'rib chiqiladi va eng so'nggi komponentlar bilan sinovdan o'tkaziladi. Oskílki ínstruktsija ob'êmna, viniknennya kechirish pov'yazane z tim bo'lishi mumkin, scho aftidan o'tkazib yuborilgan yoki zrobivali noto'g'ri. Orqa tomonda ko'rgan hamma narsani sinab ko'ring va barchasini qayta tiklang.

Ko'rsatmalarning sabablariga ko'ra, veb-serverda ayblangan juda ko'p odatiy kechirimlar tanlangan, boshqa tomondan muammolarning yuqori qismidan bir vaqtning o'zida barcha hidlar tasvirlangan. Apache, PHP, MySQL/MariaDB, phpMyAdmin o'rnatishlarni sozlashda kechirim.". Shuningdek, u erda muammoingizni qanday qilib to'g'ri tasvirlash kerakligi, ular sizga uni hal qilishda yordam berishlari uchun yozilgan.

Go'yo siz ishlamaysiz, uning oldida prohannya, sharhlarda qanday savol qo'yish kerak, vikonati bu tomondan kechirim so'raydi. Siz uchun brauzeringizda Ctrl+F tugmalarini bosib, kechirim qatorining bir qismida qidirishingiz mumkin.

Buvay rydkísna pardon, pov'yazana z tim, scho ínsha dasturi allaqachon 80-portni tinglayapti. Qaysi port 80 quyidagicha o'rnatilishi kerakligini aniqlash uchun:

1) WIN + x tugmalarini bosing

2) ro'yxatdan "Windows PowerShell (administrator)" ni tanlang.

3) u yerga bosing:

Cmd for /f "tokens=1,2,3,4,5*" %i in ("netstat -aon ^| findstr ":80" ^| findstr /i listening") aks sado | findstr %m

Agar dastur allaqachon 80-portda osilgan bo'lsa, unda siz buni qilishingiz kerak.

Server ko'rinishi

Sizga kerak bo'lmagan server kabi, aks holda siz yoga-ni qayta o'rnatmoqchisiz, xizmatlarni ishga tushirasiz va buyruq satriga kiritganingizdan so'ng ularni avtomatik ishga tushirishdan o'chirasiz:

C:\Server\bin\Apache24\bin\httpd.exe -k stop c:\Server\bin\Apache24\bin\httpd.exe -k net stop mysql-ni o'chirish c:\Server\bin\mysql-8.0\bin\ mysqld - olib tashlash

Jildni o'chirish uchun server fayllarini o'chiring C:\Server\. Hurmat, siz barcha ma'lumotlar bazalarini va saytlaringizni ko'rasiz.

Qanday qilib Apache veb-serverini Windows-da yovuz server sifatida buzish mumkin

PHP bilan (versiyalarni tanlash bilan), MySQL va phpMyAdmin bilan. Daniya xosting sayti o'z-o'zidan: xorijiy va malakali texnik yordam, WordPress va boshqa veb-xostlarni bir marta bosish bilan o'rnatish,

1,3 ming

Ushbu maqolada Windows-da Apache HTTP serveri bilan birgalikda ishlash uchun PHP-ni o'rnatish yordami berilgan. Ushbu protsedura Windows XP va Vista da sinovdan o'tgan. Iltimos, Apache-ni o'rnatishni allaqachon tugatganingizni unutmang.

PHP 5 o'rnatish bosqichlari

1. PHP 5 ni oling

Birinchidan, boshlang, PHP 5 nusxasini oling qiziqish tomonlari. VC6 paketini Windows Binaries distributividan o'g'irlang - shuning uchun o'rnatuvchini o'g'irlamang. Masalan, "belgili paketni tanlang" PHP 5.2.5 zip paketi”, hozirda joriy versiya - 5.2.5.

Eslatma: Iltimos, esda tutingki, men quyida tavsiflangan protsedurani PHP 5.3 yoki 5.2.5 versiyalari bilan sinab ko'rmadim, bu yozish paytida qolgan versiya edi. Nazariy jihatdan, siz PHP 7 ni o'rnatish uchun javobgarsiz.

2. PHP 5 ni o'rnating

Qattiq diskda PHP uchun papka yarating. Men c: php deb talaffuz qilaman, agar xohlasangiz, papka nomini o'zgartirishingiz mumkin. Ayniqsa, bo'sh joy qo'yilgan nomlarni yutmayman.

Ziplangan arxivdan tsíêí jildiga barcha fayllarni Wiymít. Kim uchun, faqat zip faylga ikki marta bosing. Va keyin barcha fayllarni c: php jildiga torting.

3. Paketni yangilayotgan Tim: Windows katalogidan eski PHP.INI faylini o'chirib tashlang.

Agar siz PHP 5 ning eski versiyasiga o'tayotgan bo'lsangiz, Windows katalogiga o'ting, ( qo'ng'iroq qiling c:Windows) va u erda ilgari joylashtirilgan barcha php.ini fayllarini o'chirib tashlang.

4. PHP ni moslashtirish

c:php jildiga o'ting va php.ini tomonidan tavsiya etilgan fayldan nusxa oling. Yangi php.ini fayliga nom bering. Endi sizda c:phpphp.in faylida xatolik bor, bu c:phpphp.ini tomonidan tavsiya etilgan fayl bilan bir xil.

Eslatma. Apache 1-ni sozlash uchun php.ini faylini Windows katalogiga ko'chirishingiz kerak bo'lishi mumkin ( c: derazalar) yoki PATH muhitini o'zgartiring va undan oldin c:php ni qo'shing. Agar buni qanday qilishni bilmasangiz, php.ini faylini c:windows jildiga ko'chiring. Apache 2 ni yengish uchun ko'p mehnat talab etilmaydi, shuning uchun biz Apache 2 konfiguratsiya faylida php.ini faylini o'zgartirish uchun direktivani belgilashimiz kerak.

PHP ni Windows 7 da matn muharriri yordamida o'rnatish uchun ( masalan, "Ishga tushirish" menyusining "Xizmatlar" bo'limida joylashgan "Bloknot" kabi)? php.ini faylini oching. Faylga quyidagi o'zgarishlarni kiritish mumkin:

a) Ko'rsatilgan qisqa teglarni qo'shing

Keyingi qatorni toping:

short_open_tag = O'chirilgan

short_open_tag o'chirilgan bo'lsa , " tipidagi teglar

Ko'pgina uchinchi tomon PHP skriptlarining parchalari " formatidan foydalanadi.

short_open_tag = Yoqilgan

b) Maftunkor panjalar

Reklama kiritish ma'lumotlari uchun Apache PHP ni o'rnatganingizda, u qo'shimcha chiziq uchun avtomatik ravishda tekshirilmaydi. Agar siz kirish ma'lumotlariga teskari chiziq ("") bilan prefiks qo'llanilishini istasangiz, masalan, hostingni yaxshilash, keyingi qatorni bilish uchun:

magic_quotes_gpc = O'chirilgan

va uni quyidagi bilan almashtiring:

magic_quotes_gpc = Yoqilgan

Kuchli bo'lish tavsiya etilmaydi, chunki bu parametrni joylashtirish uchun vazifalar yo'q. O'chirilgan qiymat bilan Navit, siz hali ham yutib olishingiz mumkin PHP funktsiyasi addslashes(), maʼlumotlarning maʼlum qismlariga qirra qoʻshish uchun.

c) Global o'zgaruvchilar viskisi

Terish paytida bir qator eski skriptlar forma orqali majburiy kiritilgan barcha ma'lumotlar avtomatik ravishda bir xil nomdagi PHP ga o'zgartirilishidan kelib chiqadi. Misol uchun, formada "bir narsa" nomi bilan kiritish maydoni mavjud bo'lganligi sababli, eski PHP skriptlarida PHP protsessorida ushbu maydon orqali berilgan qiymatni almashtirish uchun avtomatik ravishda $something nomiga o'zgartirish yaratiladi.

Bunday skriptlarni g'alaba qozonganingizda, keyingi qatorni bilishingiz kerak:

register_globals = O'chirilgan

va uni quyidagicha o'zgartiring:

register_globals = Yoqilgan

Oldinga: PHP-ni Windows-ga o'rnatishdan bir soat oldin buni amalga oshirib bo'lmaydi, chunki sizda ishlash uchun zarur bo'lgan uchinchi tomon skriptlari yo'q. Yangi skriptlarni yozishda siz har doim register_globals elementining qiymati "ga o'rnatilganligini ko'rishingiz kerak. Oʻchirilgan«.

d) kechirish

"Jonli" saytda skriptlardan kechirimlar PHP fayllaridan kechirimlar ko'rsatilmasdan ro'yxatga olinadi. Mahalliy kompyuterda Ale, PHP skriptini sinab ko'rish va o'rnatish vaqtida brauzer oynasida to'g'ridan-to'g'ri ko'rsatilganda kechirim haqidagi bildirishnomalarni osongina boshqarishingiz mumkin. Shunday qilib, siz kechirimlarni o'tkazib yubormaysiz, shuning uchun kechirim jurnali faylini qayta yozishni unutasiz.

PHP to'g'ridan-to'g'ri brauzer oynasida kechirim bildirishnomalarini ko'rsatishi uchun keyingi qatorni toping:

display_errors = O'chirilgan

va quyidagiga o'zgartiring:

display_errors = Yoqilgan

Ishchi saytdagi qaysi parametr uchun uning O'chirilganligiga ishonch hosil qiling.

e) sessiyani o'tkazish usuli

G'olib seans uchun skript sifatida keyingi qatorni toping:

;session.save_path = "/tmp"

session.save_path PHP seans fayllarini saqlaydigan papkani belgilaydi. Windows uchun /tmp papkasi mavjud emas, siz boshqa papkani o'rnatishingiz kerak. Buning bir usuli c: tmp bilan jild yaratishdir ( C: php dan oldin qilganimiz kabi) va ushbu parametr uchun jildni tanlang. O'sib ulg'ayganingizda, butun qatorni shunday darajaga o'zgartiring:

session.save_path = "c:tmp"

Qrim yo'lini o'zgartirayotganiga hurmatni qaytarish uchun men komadan keyin nuqta prefiksi tartibini ham ko'rdim (";").

Kompyuteringizda TEMP jildini ham tahrirlashingiz mumkin. Yoki PHP katalogida tmp papkasini yarating, masalan, c: phptmp va xuddi shu tartibda konfiguratsiya faylini o'rnating. Mumkin variantlar boy bo'lishi mumkin. Qaysi birini tanlashni tanlay olmasangiz, yuqorida aytganimdek c:php ni yarating va quring.

f) SMTP serveri

Shuningdek, PHP 5 5 o'rnatmalari, shuningdek, mail() funktsiyasi uchun skript va keyingi tarqatishni bilish uchun funktsiya pochtani mahalliy kompyuterga muvaffaqiyatli yuklab olishi kerak:

; Faqat Win32 uchun. smtp=localhost smtp_port=25; Faqat Win32 uchun. ;sendmail_from= [elektron pochta himoyalangan]

SMTP serveringiz manzilini va elektron pochtaning jismoniy yozuvini kiritish orqali uni o'zgartiring. Masalan, sizning kabi SMTP serveri mail.example.com, va elektron pochta manzillari [elektron pochta himoyalangan], kodni shunday o'zgartiring:

smtp=mail.example.com smtp_port=25 sendmail_from= [elektron pochta himoyalangan]

Shuni esda tutingki, agar skript mail() funksiyasini yutib olishga harakat qilsa, muvaffaqiyatli ishlash uchun siz Internet-provayderingizga ulanishingiz kerak bo'ladi. Agar siz qatorning yo'nalishini o'zgartirmasangiz, skriptdan mail() funktsiyasini yutib olishga harakat qilasiz, funksiya xato kodini aylantiradi va kechirim haqida eslatmani ko'rsatadi.

PHP 5 uchun Apache qanday yaratiladi

Apache PHP-ni o'rnatishning ikki yo'li mavjud. Birinchisi: korxona uchun nalashtuvati yoga PHP tarjimoni Apache moduli sifatida. Boshqasi: ikkilik CGI tarjimonini ishga tushirish uchun yoga-ni tuzating. Ulardan kamida bittasini to'xtatish kerak. Modul usulini tanlang, chunki PHP hostingda Apache moduli sifatida ham oʻrnatilgan yoki hostingdagi ilovalar kabi CGI usulini tanlang.

a) PHP 5 ni Apache moduli sifatida ishga tushirish

PHP uchun Apache-ni PHP skriptlarini tahlil qilish moduli sifatida sozlash uchun ASCII matn muharriridan Apache konfiguratsiya faylini httpd.conf ochish uchun foydalaning.

Agar siz Apache 1.x-ni buzsangiz, fayl papkada c: Dastur FilesApache GroupApacheconf. Apache 2.0.x koderlari papalik davrida yogoni bilishi mumkin C: Dastur fayllariApache GroupApache2conf, va Apache 2.2.x ning qisqa versiyasi papalik davrida C: Dastur FilesApache Software FoundationApache2.2conf. Qoida tariqasida, vin Apache o'rnatilgan katalogdagi conf papkasida joylashgan.

LoadModule bayonotlari bilan fayl bo'limini toping. Goloshennya, # xesh belgisidan oldin ular izohlanadi.

Apache 1.x-ni yutganingizdan so'ng, barcha LoadModule bayonotlaridan keyin quyidagi qatorni qo'shing:

LoadModule php5_module "c:/php/php5apache.dll"

Apache 2.0.x ni yutganingiz uchun barcha LoadModule bayonotlaridan keyin quyidagi qatorni qo'shing:

LoadModule php5_module "c:/php/php5apache2.dll"

Apache 2.2.x-ga yopishganingizda, keyingi qatorni qo'shing:

LoadModule php5_module "c:/php/php5apache2_2.dll"

Iltimos, shuni yodda tutingki, ushbu PHP o'rnatilishi an'anaviy Windows slash ("") o'rniga to'g'ri chiziq belgisidan ("/") foydalanadi. Tse kechirim emas.

Apache 1.x-ni yutganingizdan so'ng, bir qator AddModule bayonotlarini toping va barcha qatorlardan keyin qo'shing.

AddModule mod_php5.c

Keyin faylda AddType blokini toping va AddType operatorining qolgan qismidan keyin qator ostiga maslahatlar qo'shing. Apache-ning qaysi versiyasini yutganingizga qarab, mustaqil ishlash kerak. Apache 2.2.x uchun tarqatishdagi AddType qatorlarini bilish kerak . Yopishdan oldin o'rtasi bo'lmagan qator qo'shingqaysi bo'lim uchun.

Agar sizga boshqa turdagi fayllar to'plami kerak bo'lsa, masalan, ".phtml" ularni ro'yxatga qo'shing, masalan:

Apache 2 ning bitta versiyasini tvitlagan Tim PHP ini faylini sozlashi kerak. Keyingi qatorni httpd.conf oxiriga qo'shing.

PHPIniDir "c:/php"

Agar siz boshqa katalogni o'zgartirgan bo'lsangiz, c:/php ni to'g'ri yo'lga o'zgartirishingiz kerak bo'ladi. ("/") orasidagi o'roqni zasosuvat qilishni unutmang.

Apache 1-ni buzganingizdek, siz allaqachon php.ini faylini Windows papkasiga yoki bu yerda PATH-ga joylashtirgansiz. Shuning uchun, PHP mustaqil ravishda ma'lum bo'lishi mumkin.

PHP 5 ni CGI binari sifatida ishga tushirish

PHP 5-ni Apache moduli sifatida o‘zgartirganingiz uchun ushbu bo‘limni o‘tkazib yuborishingiz mumkin. PHP ni ikkilik CGI sifatida ishga sozlamoqchi bo'lganlar uchun manzillar.

PHP 7 ni o'rnatish tartibi Apache 1.x va 2.x seriyasining barcha versiyalari uchun bir xil.

ScriptAlias ​​tarqatilishini o'z ichiga olgan Apache konfiguratsiya faylining bir qismini toping. "SkriptAlias" qatoridan keyin keyingi qator ostiga sichqonchani ko'taruvchi qatorlarni qo'shing cgi-bin". Agar siz Apache 2.2.x-ni aldayotgan bo'lsangiztarqatish uchun .

Hurmatni qaytaring: Agar siz PHPni boshqa joyga oʻrnatgan boʻlsangiz, masalan, c:Program Filesphp , toʻgʻri yoʻlni koʻrsatishingiz kerak. c:/php/ (masalan, c:Program Filesphp). Shuni unutmangki, bu erda Windows ("") orasidagi teskari o'roq o'rniga oddiy guruch o'roqi ("/").

ScriptAlias ​​/php/ "c:/php/"

Apache PHP ning MIME turini o'rnatishi kerak. Sharhlar blokini toping AddType , bu ikkinchi tanlovni tushuntiradi va keyingi qatorni yangisining ostiga qo'shing. Apache 2.2.x uchun tarqatishda AddType qatorlarini toping . To'g'ridan-to'g'ri yopishdan oldin qator ostiga yo'l-yo'riq qo'shing qaysi bo'lim uchun.

AddType ilovasi/x-httpd-php .php

PHP Apache moduli kabi o'rnatilgan vaqtlarda bo'lgani kabi, siz Apache uni PHP skripti kabi tanib olishi uchun kengaytma qo'shishingiz mumkin, masalan:

AddType ilovasi/x-httpd-php .phtml

Keyin, agar siz PHP skriptini yozayotgan bo'lsangiz, serverga PHP faylini darhol yuklab olishni aytishingiz kerak. Faylga keyingi kodni qo'shing, masalan, izohlar blokidan keyin tushuntirish uchun " harakat«.

Agar siz Apache 2.2.x ni belgilayotgan bo'lsangiz, yuqorida tavsiflangan AddType ko'rsatmasidan keyin keyingi bo'limga kodni qo'shing; Apache 2.2.x da izoh bloki mavjud emas " harakat«.

Harakat ilovasi/x-httpd-php "/php/php-cgi.exe"

Eslatma: "/php/" qismi Apache-ni "c:/php/" ("c:/php/") ga kengaytiradigan makrosning bir turi ScriptAlias ​​sifatida tan olinadi. yoki "c:/Program Files/php/" deb PHPni o'rnatdingiz). Boshqacha qilib aytganda, ushbu direktivada "c:/php/php.exe" ni qo'ymang yoki "c:/Program Files/php/php.exe", va teg "/php/php-cgi.exe" .

Agar siz Apache 2.2.x-ni ishlatayotgan bo'lsangiz, httpd.conf faylidagi keyingi bo'limga qarang:

Keyingi qatorga tushirilgan qatorlarni qo'shing, men uni bo'lganimdan so'ng, men buni yaxshi bilardim.

AllowOverride None Options Hech biri Buyurtmaga ruxsat berish, rad etish Barchasidan ruxsat berish

c) Aktsiyalar uchun indeks sahifasini yaratish

Ushbu loyiha PHP-ni Windows-ga Apache moduli, shuningdek, dual CGI sifatida o'rnatish uchun kengaytirilgan.

Agar siz index.php faylini yaratsangiz va Apache saytning asosiy sahifasi bo'lishini istasangiz, httpd.conf fayliga yana bitta qator qo'shing. "dan boshlanadigan qatorni toping DirectoryIndex", keyin " qo'shing index.php» fayllar ro'yxatida. Misol uchun, agar sizda quyidagi kod bo'lsa:

DirectoryIndex index.html

yoga o'zgartiring:

DirectoryIndex index.php index.html

Katalog nomi orqali veb-serverga kirishga hujum qilganda, masalan " localhost» yoki « localhost/katalog/”, Apache index.php yoki index.html faylidagi barcha skriptlarni tahrirlaydi, shuning uchun index.php mavjud emas.

Apache veb-serverini qayta ishga tushiring

Apache serverini qayta ishga tushiring. Faylga httpd.conf faylini joylashtirishingiz uchun Apache yangi PHP konfiguratsiya direktivalarini kiritishi kerak. Apache 2.2 serverini Ishga tushirish panelidagi Apache Service Monitor belgisini ikki marta bosish va uning yonidagi "Qayta ishga tushirish" tugmasini bosish orqali qayta ishga tushirish mumkin.

PHP o'rnatilishini sinab ko'rish

PHP 5 5 yoki boshqa versiyani o'rnatgandan so'ng, quyidagi tartibda PHP faylini yarating:

Apache htdocs katalogidan test.php nomli faylni saqlang. Bloknot yozganingizda, uni saqlashni unutmang. test.php» panjalari bilan. Aks holda, dastur avtomatik ravishda .txt kengaytmasini qo'shadi.

Ushbu faylni brauzerda "localhost/test.php" ni manzil satriga (panjalarsiz) joylashtirish orqali oching. Faylni to'g'ridan-to'g'ri Explorer orqali ochmang - sizga faqat kod, avvalroq tanishuvlar kerak bo'ladi. Brauzer skriptni sharhlash uchun PHP ishlaydigan Apache veb-serveriga kirishga harakat qilishi uchun berilgan URL manzilini kiritishingiz kerak.

Agar hamma narsa muvaffaqiyatli bo'ladigan bo'lsa, siz PHP ning rivojlanishi haqida ma'lumot bilan yordam berishingiz mumkin. Vitayu, siz PHP-ni muvaffaqiyatli o'rnatdingiz va u bilan ishlash uchun Apache-ni sozladingiz. Siz hostingingizga test.php faylini yuklashingiz va uni ishga tushirishingiz va hostingingizga PHP qanday oʻrnatilganligini bilib olishingiz va uni kompyuteringizga oʻrnatishga harakat qilishingiz mumkin.

Nega buni qilmaysiz, teskarisiga o'tkazasiz, nega PHP o'rnatilishini yoki Apache pardon o'rnatilishini ko'rmaysiz. Ushbu buyruq qatori oynasini ochish uchun test.php faylida php-cgi.exe faylini ishga tushiring, masalan, c:phpphp-cgi test.php.

Agar siz PHP ga buyruq satridan qo'ng'iroq qilsangiz va PHP konfiguratsiya ma'lumotlariga ega ajoyib HTML faylni yuklab olgan bo'lsangiz, PHP to'g'ri o'rnatilgan. Imovirno, muammo Apache konfiguratsiyasi bilan bog'liq. Veb-serverni to'g'ri sozlash uchun konfiguratsiyaga o'zgartirish kiritganingizdan so'ng Apache-ni qayta ishga tushirganingizga ishonch hosil qiling.

PHP Vivchennia

PHP o'rnatilishining so'nggi isbotini texnologiyaning rasmiy veb-saytida topish mumkin. Yogo-ni onlayn ko'rish yoki oflayn ko'rish uchun sotib olish mumkin.

Hammaga xayrli kun!

Nashr maqolaning tarjimasi sifatida berilgan " Windowsda Apache bilan ishlash uchun PHP 5 ni qanday o'rnatish va sozlash» , loyiha uchun do'stona jamoa tomonidan tayyorlangan

© 2022 androidas.ru - Android haqida hamma narsa