Инсталиране на PHP на Unix системи

Съдържание

Този раздел описва инсталирането и конфигурирането на PHP на Unix системи. Моля, прочетете всички раздели относно вашата платформа или уеб сървър, преди да продължите с инсталацията.

Както е посочено в раздела Общи указания за инсталиране, в този раздел ние описваме основно уеб базирана инсталация на PHP, но също така засягаме инсталирането на PHP за използване от командния ред.

Има няколко начина за инсталиране на PHP на Unix платформи. Единият е процесът на конфигуриране и компилиране на източници, другият е инсталиране от пакети. Този документ се фокусира върху инсталирането от източника. Много Unix-подобни системи имат различни системи за инсталиране на софтуер от пакети. Те могат да ви помогнат да настроите стандартни конфигурации, но ако имате нужда от други опции (като защитен сървър или различен драйвер за база данни), може да се наложи да компилирате PHP и/или вашия уеб сървър. Ако не сте запознати с компилирането на собствен софтуер, може би си струва да разгледате създадения от някой друг PHP пакет с функциите, от които се нуждаете.

За да компилирате PHP от изходния код, имате нужда от следното:

  • Основни познания за Unix (способност за работа с "make" и C компилатора)
  • ANSI C компилатор
  • уеб сървър
  • Всички компоненти, специфични за отделни PHP модули (като GD библиотеки, PDF файлове и др.)

Когато изграждате директно от източници на Git или след ръчни промени, може също да имате нужда от:

  • autoconf: 2.13+ (за PHP = 5.4.0), 2.64+ (за PHP >= 7.2.0)
  • автомобилна марка: 1.4+
  • libtool: 1.4.x+ (с изключение на версия 1.4.2)
  • re2c: Версия 0.13.4 или по-нова
  • flex: Версия 2.5.4 (за PHP
  • бизон:
  • PHP 5.4: 1.28, 1.35, 1.75, 1.875, 2.0, 2.1, 2.2, 2.3, 2.4, 2.4.1, 2.4.2, 2.4.3, 2.5, 2.5.1, 2.6, 2.6.1, 2.6.2, 2.6.4
  • PHP 5.5: 2.4, 2.4.1, 2.4.2, 2.4.3, 2.5, 2.5.1, 2.6, 2.6.1, 2.6.2, 2.6.3, 2.6.4, 2.6.5, 2.7
  • PHP 5.6: >= 2.4,
  • PHP 7.0 - 7.3: 2.4 и по-нова версия (включително Bison 3.x)
  • PHP 7.4: > 3.0

След като PHP е конфигуриран, вие сте готови да създавате модули и/или изпълними файлове. Командата make трябва да се погрижи за това. Ако нещо не работи и не можете да разберете защо, вижте Проблеми с инсталацията.

Някои Unix системи (като OpenBSD и SELinux) може да забранят, от съображения за сигурност, разпределянето на памет като записваема и изпълнима. Това се нарича PaX MPROTECT или W^X нарушение на сигурността. Въпреки това, този режим на разпределение на паметта е необходим, за да поддържа PCRE JIT компилация, така че в такива случаи PHP трябва да бъде изграден без поддръжка за PCRE JIT компилация или двоичните файлове трябва да бъдат включени в белия списък от операционната система,

Забележка: В момента не се поддържа кръстосано компилиране под ARM с помощта на "Android toolchain".