Към съдържанието

Настройки за бисквитки

Изберете кои видове бисквитки разрешавате. Можете да промените избора си по всяко време чрез „Настройки за бисквитки“ в долната част на всяка страница. Декларация за поверителност

Необходими

Винаги включени

Нужни са за вход, за запазване на количката и на Вашите избори. Те са винаги включени.

Кои бисквитки?
  • weboke_sessie, weboke_klant, weboke_remember: Вашата сесия и оставането в акаунта
  • weboke_basket: Вашата количка
  • wkBtwIncl: показване на цените с или без ДДС
  • wok_cookies: Вашият избор за бисквитките, 12 месеца

Измерват коя реклама води до посещение или поръчка, за да не плащаме за реклами без резултат.

Кои бисквитки?
  • Google Ads чрез Google Tag Manager (_gcl_au, _gcl_aw), до 90 дни
  • OpenAI Ads, реклами в ChatGPT
  • wok_aff: кой партньор Ви е препратил към нас (партньорска програма), 60 дни

4,6

Държава и език

Всяка държава има собствен сайт, с цените и ДДС на тази държава.

Преглед

PHP версии и ъпгрейди

Вижте го в кратък филм

Преглед на PHP версията в Select PHP version 0:37

Модул 8: Резервни копия, тестова среда (staging) и PHP ъпгрейди · Време за четене: 10 минути

Учебна цел: След този урок ще можете безопасно да подготвите и извършите ъпгрейд на PHP, а при нужда и да го върнете.

Ключови понятия: жизнен цикъл на PHP (активна поддръжка, само сигурност, край), съвместимост на WordPress, темата и разширенията, остаряло (deprecated), предупреждение, фатална грешка, Състояние на сайта, лог за грешки, тестова среда (staging), възстановяване, възлагане на ъпгрейда

Защо версиите на PHP имат значение

WordPress, Вашата тема и Вашите разширения (плъгини) са написани на PHP (урок 1.2). Всяка година излиза нова версия на PHP (8.3, 8.4, 8.5, ...). Всяка версия се поддържа за определен период:

  • активна поддръжка: две години с поправки на грешки и на пробиви в сигурността;
  • само сигурност: след това още две години само с поправки за сигурността;
  • край (end of life): никакви поправки повече, дори и за пробиви.

Състоянието към 8 ноември 2026 г. според php.net:

ВерсияАктуализации за сигурност доСъстояние
8.1 и по-стари(изтекло)Без актуализации
8.231 декември 2026Само сигурност, наближава краят
8.331 декември 2027Само сигурност
8.431 декември 2028Активна
8.531 декември 2029Активна

Уебсайт на версия без актуализации работи със софтуер с известни пробиви, които вече не се поправят. Освен това по-новите версии са осезаемо по-бързи (урок 6.3). А wordpress.org препоръчва PHP 8.3 или по-нова (към ноември 2026 г.). Целта е да сте в крак всяка година, а не да правите голям скок веднъж на пет години.

Защо ъпгрейдът може да счупи нещо

Всяка нова версия на PHP променя нещо. Функции, които от години са отбелязани като остарели (deprecated), се премахват, а правилата стават по-строги. Няколко известни примера:

  • PHP 8.0 премахна, наред с други, create_function() и each(), а много предупреждения станаха грешки;
  • PHP 8.2 отбеляза като остаряло динамичното създаване на свойства на обекти, което се среща често в по-стари разширения.

Има три вида съобщения и разликата между тях е важна:

СъобщениеЗначениеПоследица
Deprecated (остаряло)„Това все още работи, но ще изчезне в следваща версия“Нищо видимо; предупреждение за бъдещето
Warning или NoticeНещо не е съвсем наредОбикновено нищо видимо, понякога някоя част работи странно
Fatal errorPHP спираБяла страница или „критична грешка“ (урок 5.4)

Самият WordPress обикновено се справя добре с новите версии на PHP. Рискът е в старите разширения и теми, особено ако отдавна не са обновявани или са разработени по поръчка.

Как да откриете текущата си версия

  • В WordPress: Инструменти > Състояние на сайта, раздел Информация, под Server: версията на PHP. Състояние на сайта Ви предупреждава и ако версията Ви е остаряла.
  • В панела на Вашия хостинг: при DirectAdmin с CloudLinux в Select PHP version (с „(current)“ след текущата версия).
  • Понякога сървърът я издава в хедъра X-Powered-By: PHP/8.3.x. По-добре да не е така (урок 7.4), но ако е там, се вижда бързо.

Внимание: при много хостинг доставчици версията на PHP важи за целия Ви пакет, т.е. за всички уебсайтове в него. Един стар уебсайт в същия пакет може да Ви спъва. Това е още една причина да премахнете старите уебсайтове или да им дадете отделен пакет.

Ъпгрейдът: стъпка по стъпка

  1. Първо обновете. Обновете WordPress, темата и всички разширения на текущата версия на PHP. Така голяма част от проблемите вече са решени, защото авторите адаптират кода си за новите версии на PHP.
  2. Вижте какво казват разширенията Ви. На страницата на разширението в wordpress.org е посочена изискваната версия на PHP; в changelog често пише „compatible with PHP 8.x“. Разширение, което не е обновявано от години (урок 5.3), е кандидат за замяна.
  3. Направете резервно копие (урок 8.1).
  4. Тествайте в тестова среда (staging) (урок 8.3). Ако хостинг доставчикът Ви позволява различна версия на PHP за всеки уебсайт, поставете тестовата среда на новата версия. Ако не може (една версия за пакет), тествайте в тестова среда в друг пакет, локално, или изберете спокоен момент на живия сайт, като държите старата версия готова за връщане.
  5. Превключване: изберете новата версия в панела си. При DirectAdmin с CloudLinux я избирате в Select PHP version и натискате Apply; без Apply нищо не се променя.
  6. Проверете веднага: отворете уебсайта си и разгледайте няколко страници, включително администрацията, формуляр и (при онлайн магазин) плащането. Проверете в лога за грешки (урок 5.4) за нови редове PHP Fatal error.
  7. Разширения на PHP и настройки: при някои хостинг доставчици разширенията на PHP и опциите (като memory_limit) са обвързани с версията. След смяната проверете дали са настроени правилно за новата версия.

Ако нещо се обърка

  • Фатална грешка: върнете старата версия (при повечето хостинг доставчици това става веднага), за да заработи уебсайтът Ви отново. Потърсете в лога за грешки кое разширение или коя тема е причината (пътят е в съобщението за грешка), обновете го, заменете го или помолете автора за решение. След това опитайте отново.
  • Само съобщения deprecated: няма причина да се връщате. Но това е предупреждение: при следващата версия може да стане грешка. Запишете кое разширение е.
  • Код по поръчка, който вече не работи: стар уебсайт, направен от уеб разработчик, може да съдържа код, който никой вече не поддържа. Тогава този код трябва да бъде адаптиран от някой, който познава PHP. Някои хостинг доставчици, сред които и WebOké, предлагат да направят това вместо Вас.

Не оставяйте уебсайт „завинаги“ на стара версия, само защото едно разширение не може да продължи напред. Това е отлагане на проблем, който расте всяка година.

Повече сигурност предварително

За тези, които искат да отидат по-далеч: с PHP_CodeSniffer и правилата на PHPCompatibilityWP можете да проверите кода на разширенията и темите си за неща, които не работят в по-нова версия на PHP, без да стартирате уебсайта. Така се откриват много проблеми, но не всички. Тестването в тестова среда (staging) остава необходимо.

На практика: как изглежда в панела

Като пример използваме DirectAdmin с CloudLinux. В cPanel това често се нарича MultiPHP Manager или Select PHP Version, а в Plesk PHP Settings.

  1. Отворете Select PHP version (под Extra Features).
  2. Щракнете върху версията до PHP version, изберете новата версия и натиснете Apply.
  3. Проверете разделите Extensions и Options за новата версия.
  4. Проверете уебсайта си и лога за грешки. Ако нещо не работи, изберете старата версия и Apply.

Обобщение

  • Всяка версия на PHP получава две години активна поддръжка и две години само сигурност; след това няма повече поправки. Към 8 ноември 2026 г. версия 8.1 не получава нищо, а 8.2 само до края на 2026 г.
  • Ъпгрейдът чупи най-вече стари разширения и теми; deprecated е предупреждение, а fatal error спира уебсайта.
  • Последователност: обновете всичко, проверете разширенията, резервно копие, тест в тестова среда, превключване, незабавна проверка.
  • Ако нещо се обърка, върнете старата версия, намерете виновника в лога за грешки и решете проблема; не оставайте на стара версия.
  • При много хостинг доставчици версията важи за целия пакет; премахнете старите уебсайтове.

Тест (quiz)

1. Какво означава, че една версия на PHP получава „само сигурност“?



2. След ъпгрейд на PHP в лога за грешки има само съобщения „Deprecated“. Какво правите?



3. Каква е правилната последователност при ъпгрейд на PHP?



4. Имате два уебсайта в един пакет. Новият може да работи с PHP 8.4, старият спира над PHP 7.4. Какъв е проблемът и какво е решението?



Задача

Задача A8.4: Все още ли се поддържа Вашата версия на PHP? Вижте в Инструменти > Състояние на сайта, раздел Информация, Server, коя версия на PHP използва уебсайтът Ви, и я въведете заедно с Вашия домейн. Програмата сравнява версията със списъка на поддържаните версии от php.net: зелено при активна поддръжка, оранжево при само сигурност, червено, ако вече няма актуализации. Ако сървърът Ви показва версията в хедъра X-Powered-By, програмата проверява и дали тя съвпада с въведената от Вас (и Ви съобщава, че е по-добре да скриете този хедър, урок 7.4).

Задача A8.4: Все още ли се поддържа Вашата версия на PHP?



Това, което въвеждате, и резултатите от проверката не се съхраняват. Браузърът Ви запомня отговорите и дали сте изпълнили задачата. Ако сте влезли, запазваме само дали задачата е била (почти) правилна в Моите курсове; и там можете да го изтриете.

Задача D8.4: План за ъпгрейд. Напишете план за ъпгрейд на уебсайта си до най-новата версия на PHP, която предлага Вашият хостинг доставчик. Попълнете: текуща и целева версия, кои разширения и теми имате и дали поддържат целевата версия (и къде сте прочели това), къде тествате (тестова среда, друг пакет, локално), как можете да се върнете и кога ще го направите. Изпълнете го, ако можете, и запишете какво се появи в лога за грешки.

Задача D8.4: План за ъпгрейд

Тази задача изпълнявате сами; никой не я проверява. Отбележете какво сте направили и маркирайте задачата като изпълнена.



Вашите отметки и бележки остават само в този браузър; не ги изпращаме никъде. Ако сте влезли, в Моите курсове запазваме само че сте изпълнили задачата.

Допълнително четене

Тези статии описват стъпките в панелите на WebOké; в други панели работят по подобен начин.

Моля, изчакайте…

Настройте домейните си

За всеки домейн настройте сървърите за имена, връзката с хостинга и кой ще бъде собственикът.

Домейните Ви се зареждат…