Сервер Apache вкупе с PHP 7.1 под Fedora 25

В этой методичке рассказывается, как установить Apache HTTP Server (httpd) с поддержкой  PHP 7.1.2 и с соответствующими модулями на Fedora 25. Можно применять и на других операционных системах: Fedora 24 или 23, CentOS 7.3/6.8 и Red Hat (RHEL) 7.3/6.8.

  • OPcache (php-opcache) – Zend OPcache позволяет выполнять скрипты PHP максимально быстро за счет использования кэша и оптимизации.
  • CLI (php-cli) – интерфейс командной строки PHP
  • PEAR (php-pear) – фреймворк репозитория расширений и приложений PHP
  • PDO (php-pdo) – модуль абстракции доступа к БД для приложений PHP
  • MySQL (php-mysqlnd) – модуль PHP для совместной работы с СУБД MySQL
  • PostgreSQL (php-pgsql) – A PostgreSQL database module for PHP
  • MongoDB (php-pecl-mongodb) – PHP MongoDB database driver
  • Redis (php-pecl-redis) – Extension for communicating with the Redis key-value store
  • Memcache (php-pecl-memcache) – Extension to work with the Memcached caching daemon
  • Memcached (php-pecl-memcached) – Extension to work with the Memcached caching daemon
  • GD (php-gd) – A module for PHP applications for using the gd graphics library
  • XML (php-xml) – A module for PHP applications which use XML
  • MBString (php-mbstring) – A module for PHP applications which need multi-byte string handling
  • MCrypt (php-mcrypt) – Standard PHP module provides mcrypt library support
  • APCu (php-pecl-apcu) – APCu userland caching

1. Установка HTTP Server (httpd) и PHP 7.1.2 on Fedora 25/24/23, CentOS / Red Hat (RHEL) 7.3/6.8

1.1 Сначала необходимо стать супер-пользователем

su -
## OR ##
sudo -i

1.2 Установим репозиторий Remi 

Fedora

## Remi Dependency on Fedora 25 / 24 / 23 ##
rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm 
rpm -Uvh http://download1.rpmfusion.org/nonfree/fedora/rpmfusion-nonfree-release-stable.noarch.rpm

## Fedora 25 ##
rpm -Uvh http://rpms.famillecollet.com/fedora/remi-release-25.rpm

## Fedora 24 ##
rpm -Uvh http://rpms.famillecollet.com/fedora/remi-release-24.rpm

## Fedora 23 ##
rpm -Uvh http://rpms.famillecollet.com/fedora/remi-release-23.rpm

CentOS и Red Hat Enterprise Linux (RHEL)

## Remi Dependency on CentOS 7 and Red Hat (RHEL) 7 ##
rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-8.noarch.rpm

## CentOS 7 and Red Hat (RHEL) 7 ##
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-7.rpm


## Remi Dependency on CentOS (RHEL) 6 ##
rpm -Uvh http://download.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
 
## CentOS 6 и RHEL 6 ##
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm

1.3 Установка httpd и PHP

Fedora 25/24/23

dnf --enablerepo=remi --enablerepo=remi-php71 install httpd php php-common

## или ##

dnf --enablerepo=remi --enablerepo=remi-php71 install httpd php php-common --best --allowerasing

CentOS 7.3/6.8 and Red Hat (RHEL) 7.3/6.8

yum --enablerepo=remi,remi-php71 install httpd php php-common

1.4 Установка модулей PHP 7.1.0

Выбираем из списка требуемые модули: OPcache, APCu, CLI, PEAR, PDO, MySQL, PostgreSQL, MongoDB, Memcache, Memcached, GD, MBString, MCrypt, XML.

Fedora 25/24/23

dnf  --enablerepo=remi --enablerepo=remi-php71 install php-pecl-apcu php-cli php-pear php-pdo php-mysqlnd php-pgsql php-pecl-mongodb php-pecl-memcache php-pecl-memcached php-gd php-mbstring php-mcrypt php-xml

CentOS 7.3/6.8 и RHEL 7.3/6.8

yum --enablerepo=remi,remi-php71 install php-pecl-apcu php-cli php-pear php-pdo php-mysqlnd php-pgsql php-pecl-mongodb php-pecl-memcache php-pecl-memcached php-gd php-mbstring php-mcrypt php-xml

1.5 Запуск Apache и автоматический старт при загрузке

## Fedora 25/24/23 и CentOS/RHEL 7.3 ##
systemctl start httpd.service ## use restart after update


## CentOS / RHEL 6.8 ##
/etc/init.d/httpd start ## use restart after update
## OR ##
service httpd start ## use restart after update


## Fedora 25/24/23 и CentOS/RHEL 7.3 ##
systemctl enable httpd.service

## CentOS / RHEL 6.8 ##
chkconfig --levels 235 httpd on

1.6 Создаём тестовую страницу для проверки

Необходимо создать файл /var/www/html/php_info.php со следующим содержимым:

<?php
    phpinfo();
?>

1.7 Проверка в браузере

Переходим в браузере по адресу http://localhost/php_info.php

PHP 7.1.2

1.8 Настройка

Самое время выполнить настройку под конкретные нужды.

А узнать, какие модули подключены, можно из данной статьи.

2. Открываем порт 80 на сервере для протокола HTTP

2.1 CentOS/RHEL 6.8

2.1.1 Редактируем /etc/sysconfig/iptables file:

nano -w /etc/sysconfig/iptables

2.1.2 Добавляем правило INPUT

-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT

2.1.3 Перезапуск Iptables

service iptables restart
## или ##
/etc/init.d/iptables restart

2.2 Fedora 25/24/23, CentOS/RHEL 7.3

2.2.1 Выводим список зон

firewall-cmd --get-active-zones

Пример вывода:

public
  interfaces: wlp1s0

2.2.2 Добавляем новое провило в Firewalld

Должна быть активной зона public для Fedora Workstation или Fedora Server.

firewall-cmd --permanent --zone=public --add-service=http

## или ##

firewall-cmd --permanent --zone=public --add-port=80/tcp

2.2.3 Перезапуск службы firewalld.service

systemctl restart firewalld.service

3. Проверка удалённого соединения

Выполните доступ к следующему адресу на своём сервере http://имя_вашего_домена/php_info.php

Оставить комментарий

Ваше мнение очень важно для нас! Обязательно выскажите Ваши мысли, пожелания и критику! Не стесняйтесь задавать вопросы. Скорее всего, ответ появится уже через 2-3 дня. Спасибо заранее.

Go to top