https://help.superhosting.bg/php-cli-settings-use-custom-ini.html
  • bg
  • en

Хостинг, Домейни, Cloud, Виртуални сървъри (VPS), Managed VPS, SSL сертификати

Ползване на различен php.ini файл за PHP (cli) през SSH

PHP
php, php cli, php cli ini, php.ini cli, php shell, php command line, php console, php-cli, php sapi, php sapi cli

При ползване на PHP през команден режим по подразбиране с командата php се стартира PHP CLI бинарния файл, който отговаря на PHP версията инсталирана по подразбиране.

За списък с всички опции на PHP CLI, изпълнете:

php -h
За да проверите с коя версия на PHP CLI работите в момента, използвайте:

php -v
Проверка на версията на PHP CLI
За да проверите кой php.ini файл е зареден (и ще се зарежда при всяко стартиране на PHP):

php --ini
Проверка на заредения php.ini файл (Loaded Configuration File)

Когато не е указано изрично да се ползва друг, PHP CLI ще използва системно зададения php.ini файл: /usr/local/lib/php.ini.

Ако е необходимо за изпълнението на PHP скрипт да се ползват определени PHP настройки, към командата може да се добави параметър -c и след него потребителски php.ini файл. Например:

php -c /home/cpuser/my-custom-php.ini /home/cpuser/public_html/file.php
/home/cpuser/my-custom-php.ini - заменете с пълния път и името на ini файла;
/home/cpuser/public_html/file.php - файлът, който ще бъде изпълнен;

Ако потребителският php.ini файл ще се използва при всяка PHP команда през конзолата, за да не го изписвате всеки път, добавете един ред във файл .bash_profile:

alias php='php -c /home/cpuser/my-custom-php.ini'
/home/cpuser/my-custom-php.ini - заменете с пълния път и името на ini файла;

Ако искате да работите с друга версия на PHP (cli), редактирайте реда, като промените пътя за бинарния файл:

alias php='/usr/local/php7.0/bin/php -c /home/cpuser/my-custom-php.ini'
/usr/local/php7.0/bin/php - променете php7.0 с желаната версия

info-iconБележка: В случай, че има някаква нередност в посочения ini файл, например съдържа неподдържани директиви от по-стари версии на PHP, в конзолата ще получите съобщение за грешка. Например "Fatal error: Directive 'allow_call_time_pass_reference' is no longer available in PHP in Unknown on line 0". Уверете се, че съдържанието на ini файла е за използваната PHP версия.

Ако сте логнати през SSH в хостинг акаунта, за да влезе в сила тази настройка или се разлогнете и логнете наново или изпълнете следната команда:

source ~/.bash_profile

Настройките във файла .bash_profile се зареждат всеки път при достъп до хостинг акаунта през SSH.

Проверете отново кой ini файл е зареден с команда:

php --ini

В резултата от командата, този път трябва да изпише потребителския ini файл в поле Loaded Configuration File.

В командния ред можете да зададете различна стойност на определени PHP директиви, като ползвате опция -d (configuration_directive=value). Например:

php -c /home/cpuser/php.ini /home/cpuser/file.php -d memory_limit=256M

При така зададените параметри, за изпълнението на скрипта, стойността на memory_limit ще е 256MB.


Статията се отнася за: хостинг услуги с контролен панел cPanel

500px270px
SuperHosting.BG
    PHP
  • Какво е PHP модул (PHP разширение)?
    PHP модулите представляват разширения за PHP, най-често написани на програмния език C. PHP модулите могат да се компилират с PHP, така че да се зареждат статично (като са част от... »
  • PHP CLI (Command Line Interface)
    PHP има различни интерфейси (SAPI) за взаимодействие със средата, в която работи, и за връзка с външни (за PHP) технологии. Два от интерфейсите са PHP CLI и PHP CGI (FastCGI). От версия... »
  • Какво е CGI, FastCGI?
    CGI (Common Gateway Interface) е уеб технология и протокол, по правилата на който се извършва комуникацията между уеб сървър (HTTP сървър) и други външни приложения (например PHP). CGI разширява възможностите... »
  • Активиране на PHP модул/разширение в хостинг акаунта
    Активиране на PHP модул през PHP Manager by SuperHosting За улеснено активиране и деактивиране на PHP модули в хостинг акаунта може да използвате PHP Manager by SuperHosting, в контролния панел cPanel. При... »
  • PHP модул - pspell (Portable Spell Checker Interface Library)
    pspell (Portable Spell Checker Interface Library) е разширение за PHP за проверка на правописа, работещо със системната библиотека GNU Aspell (C++). Aspell може да се ползва и от други езици, със... »
Всички права запазени © 2005-2017 , www.superhosting.bg