Attention

Важно: На всички хостинг планове поддържаме технологията FPM с OPcache, която работи по-добре от FastCGI (която се поддържа само на VPS плановете) и може да се пусне изключително лесно от Контролния панел. Има повече информация за това в статията Поддържани PHP версии.

Тъй като е възможно поддръжката на FastCGI да бъде спряна в бъдеще, ако вече използвате FastCGI, можете да намерите информация как да преминете към FPM в статията Преминаване от FASTCGI на FPM.

 

За да пуснете успешно FastCGI+OPcache, в следващите инструкции, задължително заменете:

AttentionUSERNAME с реалното потребителско име на Вашия хостинг акаунт (можете да намерите своето потребителско име в горния ляв ъгъл на Вашия хостинг Контролен панел)

 

FastCGI е начин за ускоряване на достъпа до често посещавани страници на сайта. FastCGI работи по такъв начин, че един процес обработва множество заявки преди да бъде спрян. Това премахва нуждата от стартиране на нов PHP процес при всяка нова заявка към сайта, което намалява времето за изпълнение. Освен това FastCGI позволява на OPcache да работи - този механизъм кешира предварително компилирания от приложенията байткод, като по този начин PHP не трябва отново и отново да компилира байткод за едни и същи PHP приложения. FastCGI+OPcache е най-бързото решение за обработка на множество заявки и подобряване на общата производителност на сайта.

За акаунти, които поддържат FastCGI, можете да пуснете тази технология за Вашия главен уебсайт (www.domain.com) с три прости стъпки:

Стъпка 1)

Създайте файл /home/USERNAME/www/www/.ht-fcgi-php-wrapper от раздел "Файлове" на Вашия хостинг Контролен панел. Уверете се, че файлът има необходимите права за изпълнение (съветваме Ви да сложите права 775 на файла). След като файлът е създаден успешно и има необходимите права за изпъление, добавете в него следния код:

#!/bin/bash

# memory limit in kbytes
ulimit -v 573440

# do not lower this limit or you may start getting sporadic 500 server errors
export PHP_FCGI_MAX_REQUESTS=10000

# disable PHP child process management
export PHP_FCGI_CHILDREN=0

exec /usr/local/bin/php74.cgi -c /home/USERNAME/www/www/php.ini

Важно: Ако файлът /home/USERNAME/www/www/php.ini не съществува, Ви съветваме да го създадете от раздел "Файлове" на Вашия хостинг Контролен панел и добавите съдържанието по подразбиране за php.ini файлове на нашите сървъри от съображение за съвместимост.

В тази първа стъпка е важно да се отбележи, че изборът на PHP версията, която приложението Ви ще ползва, се прави като се посочи пътят до CGI скрипта (например php74.cgi). Това се прави в последния ред от кода, споменат по-горе.

Можете да избирате от следните PHP версии, според предпочитаната от Вас:

PHP 8.2:

exec /usr/local/bin/php82.cgi -c /home/USERNAME/www/www/php.ini

PHP 8.1 (препоръчана):

exec /usr/local/bin/php81.cgi -c /home/USERNAME/www/www/php.ini

PHP 8.0:

exec /usr/local/bin/php80.cgi -c /home/USERNAME/www/www/php.ini

PHP 7.4:

exec /usr/local/bin/php74.cgi -c /home/USERNAME/www/www/php.ini

PHP 7.3 (остаряла):

exec /usr/local/bin/php73.cgi -c /home/USERNAME/www/www/php.ini

PHP 7.2 (остаряла):

exec /usr/local/bin/php7.cgi -c /home/USERNAME/www/www/php.ini

PHP 7.1 (остаряла):

exec /usr/local/bin/php71.cgi -c /home/USERNAME/www/www/php.ini

PHP 5.6 (остаряла):

exec /usr/local/bin/php56.cgi -c /home/USERNAME/www/www/php.ini

PHP 5.3 (остаряла):

exec /usr/local/bin/php53.cgi -c /home/USERNAME/www/www/php.ini

Важно: Убедете се, че сте заместили USERNAME с реалното потребителско име на Вашия хостинг акаунт, което можете да откриете в горния ляв ъгъл на Вашия хостинг Контролен панел.

Стъпка 2)

Създайте /home/USERNAME/www/www/.htaccess и добавете в него следния код, или добавете кода към съществуващия .htaccess файл:

<IfModule mod_fcgid.c>
<FilesMatch "\.php$">
AddHandler fcgid-script .php
FcgidWrapper /home/USERNAME/www/www/.ht-fcgi-php-wrapper .php
</FilesMatch>
</IfModule>

Важно: Убедете се, че сте заместили правилно USERNAME с реалното потребителско име на Вашия хостинг акаунт, което можете да намерите в горния ляв ъгъл на Вашия хостинг Контролен панел. Също проверете своя .htaccess файл за други AddHandler директиви и ги закоментирайте/изтрийте.

Стъпка 3)

Включете OPcache като добавите следния код в php.ini файла за Вашия главен уебсайт, използвайки раздел "PHP настройки" в хостинг Контролния панел:

;Enabling OPcache
[opcache]
zend_extension = opcache.so
opcache.enable = 1
opcache.memory_consumption = 128
opcache.max_accelerated_files = 10000
opcache.revalidate_freq = 60

 

Важно: Ако искате да включите FastCGI за поддомейн (example.domain.com), трябва да създадете файла /home/USERNAME/www/example/.ht-fcgi-php-wrapper , промените последния ред в него, така че да се използва основния php.ini файл на поддомейна (напр. /home/USERNAME/www/example/php.ini) и да създадете или редактирате файла /home/USERNAME/www/example/.htaccess. Пътят до .ht-fcgi-php-wrapper, указан в .htaccess файла, също трябва да бъде коригиран.

Ако срещнете трудности с FastCGI, можете да се свържете с отдела за техническа поддръжка и да получите помощ.