Web server linux fedora

Установка связки LAMP (Linux, Apache, MySQL, PHP) на сервер Fedora

Что такое LAMP stack?

LAMP stack – это связка открытых программ, которая используется для запуска веб-сервера. Данный акроним расшифровывается как Linux, Apache, MySQL, PHP. Поскольку сервер использует ОС Fedora, компонент Linux уже установлен. В руководстве показано, как установить остальные компоненты связки.

Требования

Прежде чем приступить к установке программ LAMP, обновите все пакеты системы при помощи стандартного менеджера пакетов yum:

1: Установка Apache

Apache – это свободный и открытый веб-сервер, поддерживающий более 50% всех веб-сайтов в мире.

Чтобы установить Apache, откройте терминал и введите команду:

sudo yum install httpd

После завершения установки запустите Apache:

sudo service httpd start

Чтобы убедиться, что Apache установлен, направьте браузер на IP-адрес сервера (например, http://12.12.12.123); на экране должна появиться тестовая страница Fedora.

Как узнать IP-адрес сервера?

Чтобы узнать внешний IP-адрес своего сервера, используйте команду:

ifconfig eth0 | grep inet | awk ‘< print $2 >‘

2: Установка MySQL

MySQL – это производительная система управления базами данных (СУБД), предназначенная для хранения и упорядочивания данных на виртуальном сервере.

Чтобы установить MySQL, откройте терминал и введите команды:

sudo yum install mysql mysql-server
sudo service mysqld start

Во время установки MySQL дважды спросит о ваших правах. Просто ответьте Yes дважды, после чего система MySQL будет установлена на сервер.

После завершения установки можно установить root-пароль для MySQL.

Программа запросит текущий root-пароль, но поскольку это свежая установка MySQL, root-пароля ещё нет, потому просто оставьте поле незаполненным и нажмите Enter.

Enter current password for root (enter for none):
OK, successfully used password, moving on.

Затем программа спросит, хотите ли вы установить root-пароль. Выберите Y и следуйте инструкциям.

Fedora автоматизирует процесс настройки MySQL при помощи набора простых вопросов. Чтобы использовать стандартные настройки, ответьте Yes на все вопросы. Затем MySQL перезапустится и активирует новые параметры.

By default, a MySQL installation has an anonymous user, allowing anyone
to log into MySQL without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] y
. Success!
Normally, root should only be allowed to connect from ‘localhost’. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] y
. Success!
By default, MySQL comes with a database named ‘test’ that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] y
— Dropping test database.
. Success!
— Removing privileges on test database.
. Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] y
. Success!
Cleaning up.
All done! If you’ve completed all of the above steps, your MySQL
installation should now be secure.
Thanks for using MySQL!

3: Установка PHP

PHP – это открытый скриптовый язык, который широко используется для создания динамических веб-страниц.

Чтобы установить PHP на виртуальный выделенный сервер, откройте терминал и введите:

sudo yum install php php-mysql

После подтверждения PHP установится на сервер.

Модули PHP

PHP предоставляет широкий ряд модулей и полезных библиотек. Чтобы просмотреть список доступных библиотек и модулей, введите:

Читайте также:  Change permissions on all files windows

На экране появится список модулей, который начинается так:

php-fpdf-doc.noarch : Documentation for php-fpdf
php-libvirt-doc.noarch : Document of php-libvirt
php-pear-Auth-radius.noarch : RADIUS support for php-pear-Auth
php-pear-Auth-samba.noarch : Samba support for php-pear-Auth
ice-php-devel.i686 : PHP tools for developping Ice applications
ice-php-devel.x86_64 : PHP tools for developping Ice applications
perl-PHP-Serialization.noarch : Converts between PHP’s serialize() output and
: the equivalent Perl structure
php-IDNA_Convert.noarch : Provides conversion of internationalized strings to
: UTF8
php-Kohana.noarch : The Swift PHP Framework
php-LightweightPicasaAPI.noarch : A lightweight API for Picasa in PHP
php-PHPMailer.noarch : PHP email transport class with a lot of features
php-Smarty.noarch : Template/Presentation Framework for PHP
php-ZendFramework.noarch : Leading open-source PHP framework
php-ZendFramework-Auth-Adapter-Ldap.noarch : Zend Framework LDAP
: Authentication Adapter
php-ZendFramework-Cache-Backend-Apc.noarch : Zend Framework APC cache backend

Чтобы получить более подробную информацию об определенном модуле, введите в терминал следующую команду, указав название интересующего модуля:

yum info имя_модуля

Чтобы установить модуль, введите:

sudo yum install имя_модуля

Чтобы установить несколько модулей сразу, укажите названия всех нужных модулей через пробел.

sudo yum install модуль1 модуль2 модуль3

4: Итоги

Готово! Связка LAMP stack успешно установлена на сервер.

Теперь нужно настроить автоматический запуск программ LAMP при загрузке сервера (после запуска Apache PHP загрузится автоматически):

sudo chkconfig httpd on
sudo chkconfig mysqld on

Протестируйте работу LAMP при помощи страницы php info.

Создайте новый файл:

sudo nano /var/www/html/info.php

В него внесите следующий код:

Затем сохраните и закройте файл.

Перезапустите Apache, чтобы изменения вступили в силу.

sudo service httpd restart

Теперь откройте только что созданную страницу php info, указав свой ip-адрес:

На экране появится страница с данными о php.

Источник

Установка LAMP на Fedora 20

Понедельник, 06 Октябрь 2014 00:00

Рассматривается установка веб-окружения на Linux, дистрибутив Fedora 20 на базе Apache 2, PHP 5 и MySQL 5 .

LAMP является аббревиатурой Linux+Apache+MySQL+PHP. Эта статья описывает, как установить веб-сервер Apache2 на Fedora 20 с поддержкой PHP5 (mod_php) и MySQL.

1 Предварительные замечания

Предполагается, что на нашей машине статический IP — адрес 10.4.0.10 . Настройки в вашем случае могут отличаться, поэтому замените их на свои, где это необходимо.

2 Установка MySQL/MariaDB 5

Для установки MySQL запустите yum со следующими параметрами:

Затем создадим ссылку на автозапуск MySQL (MySQL будет загружаться автоматически при старте системы) и запустим MySQL-сервер:

Замечание: если у вас появилась ошибка:

Failed to issue method call: No such file or directory

Далее запустим службу mysql

Начнём установку MySQL

Зададим пароль для администратора(иначе все смогут получить доступ к вашим базам данных MySQL!):

Далее для входа в MariaDB нам потребуется ввести пароль администратора, для остальных вопросов просто нажимаем enter.

3 Установка Apache2

Apache2 доступна в виде установки пакета Fedora, поэтому для установки запустим yum со следующими параметрами:

Теперь добавим Apache в автозагрузку при старте системы:

и запустим Apache:

Теперь перейдём по следующему адресу http://10.4.0.10. Нам откроется стандартная страница-пустышка Apache, что говорит о том, что наши предыдущие действия увенчались успехом.

В Fedora корневая папка аpache (в которой должна располагаться совокупность файлов сайта) находится по адресу: /var/www/html , а файл конфигурации находится: /etc/httpd/conf/httpd.conf. Дополнительная конфигурация находится в директории /etc/httpd/conf.d/.

4 Установка PHP5

Для установки PHP5 и Apache запустим yum со следующими параметрами:

Затем перезапустим Apache:

5 Настройка PHP

Процесс настройки PHP подробно описан в отдельной статье.

Если при вызове phpinfo при настройке PHP мы видим отсутствие информации о MySQL, то становится очевидно, что MySQL ещё не поддерживается в PHP5.

6 Поддержка MySQL

Во-первых, установим php-mysql. Нет смысла устанавливать другие модули PHP5, если они вам не требуются для ваших приложений. Для установки запустим yum со следующими параметрами:

Выберем необходимые пакеты для установки:

Теперь перезапустим Apache:

Перезагрузим http://10.4.0.10/info.php и посмотрим раздел подключенных модулей. Мы должны найти в числе подключенных модулей и MySQL.

7 phpMyAdmin

Установка и настройка phpMyAdmin подробно описаны в данной статье.

8 Финал

Всё готово, перезапустим Apache:

Теперь phpMyAdmin доступна по адресу :http:// 10.4.0.10 /phpmyadmin/.

Пришло время разворачивать сайты на нашей новой площадке!

Источник

e Learning

How to Install Apache on Fedora Server

In this tutorial we are going to learn how to install and configure Apache HTTPD Server on Fedora Server. I will also explain how to create Apache Virtual Host on Fedora HTTPD Server to host more than one website on the Web Server.

Читайте также:  Где mac os хранит контакты

For This tutorial I am using Fedora Server 24, But you can do this on Fedora Workstation and also in any Previous Version of Fedora Linux.

Install Apache on Fedora Server

The Apache Web Server for Fedora Provides by the httpd package. We can install httpd on Fedora using dnf install command. Open the Linux terminal and execute,

dnf install httpd

After the installation is finished, start and enable Apache on Fedora using systemctl command.

systemctl start httpd

systemctl enable httpd

Configure Fedora Firewall for http Traffic

Next, we need to configure fedora firewall to allow http requests to the our web server.

firewall-cmd –permanent –add-service=http

firewall-cmd –permanent –add-service=https

Test Apache Web Server

To test the apache web server, try to access localhost using curl command.

Also, From a Remote Computer, Open Web browser and type the IP Address of your Fedora Server on the Address bar. If the installation is successful, you should get the Fedora Test Page for Apache HTTPD Server.

Default Document Root for the Apache Server is /var/www/html folder. Now you can host your static website by putting the content of your website to /var/www/html folder.

Create Apache Virtual Host on Fedora Server

To Configure a Virtual Host first we need to create a configuration file for the Virtual Host inside the ls /etc/httpd/conf.d/ directory with .conf extension.

For example, If your domain name is www.example.com, then the configuration file should be something like example.conf.

Create the Configuration File.

Add Virtual host configuration

Then, we need to add the Virtual Host block to the Configuration File. Following is the sample Virtual host configuration.

Create the Document Root

The Document root is the folder where we put the content of our website.

sudo mkdir /var/www/example

sudo chgrp apache /var/www/example

sudo chmod 750 /var/www/example

Finally, we need to restart the Apache Web Server.

systemctl restart httpd

This way you can host as many websites as you want in your Fedora Web Server.

Summary – Install Apache on Fedora Server

In this tutorial we learned how to install and configure Apache on Fedora Server.

  • We installed the Apache httpd package on Fedora using dnf install command.
  • Then we Configured the Fedora Firewall to Allow http request to our web server.

Apache HTTP ServerLinux

Источник

elemc blog

I’ll speak to him again. What do you read, my lord?

httpd + php + mysql (LAMP) в Fedora для разработчика PHP

В jabber-конференцию часто приходят люди и очень часто стоит вопрос — развернуть LAMP, но не просто так, а еще и с пользовательскими каталогами, чтобы можно было на PHP писать.
Все упираются в какие-то древние инструкции, где неизменно предлагают отключить SELinux.
Я против, давайте настроим все это не выключая SELinux, максимально просто и правильно в Fedora Linux.

Установка

  • httpd — сам apache;
  • mariadb — это сервер mysql;
  • php — название само за себя говорит;
  • php-mysqlnd — модуль php для mysql;

Настройка mysqld (mariadb)

Запускаем сервер (от root):

а затем запускаем от root команду, чтобы настроить сервер:

Enter current password for root (enter for none) — введите текущий пароль для пользователя root или нажмите Enter, если он пустой.
Конечно нажимаем Enter, у нас не установлен еще пароль.
Set root password? [Y/n]
Я отвечаю Y (т.е. да) и ставлю на текущий пароль системного пользователя root.
Remove anonymous users? [Y/n]
Удаляем анонима? Я удаляю, а зачем мне анонимный пользователь 🙂
Disallow root login remotely? [Y/n]
Отключаем возможность root’у заходить по сети.
Если сервер на домашней машинке разворачивается в парниковых условиях домашней сети, то не вижу смысла говорить «Да».
А вот если это какой-нить vps/vds, тогда да, отключить надо обязательно.
Remove test database and access to it? [Y/n]
Отключаем тестовые базы данных и доступ к ним. Конечно отключаем.
Reload privilege tables now? [Y/n]
Перезагрузить таблицу привелегий сейчас. Конечно да.
Так мы закончили вводную настройку mysql (mariadb).

Читайте также:  Как восстановить систему с помощью загрузочной флешки windows 10

httpd

Запускаем apache (от root):

Проверяем

Проверим базовую настройку.
Создадим тестовый файл для проверки apache+php:

и проверим, зайдя через браузер.
Если это локальный компьютер, то адрес выглядит так: http://localhost/test.php.
Должна появится страничка с информацией о PHP.
Что-то вроде этой:

Если такой странички не появилось, значит что-то сделал(а) не так. Надо смотреть логи и лечить.
Все. Таким образом у нас уже есть «теплый LAMP’овый» сервер.

Пользовательские каталоги

В пакете httpd уже все придумано для того, чтобы создать пользовательские каталоги.
Просто включим эту возможность.

Вот оригинальное содержимое файла /etc/httpd/conf.d/userdir.conf:

user request is received.
#
# The path to the end user account ‘public_html’ directory must be
# accessible to the webserver userid. This usually means that

userid
# must have permissions of 711,

userid/public_html must have permissions
# of 755, and documents contained therein must be world-readable.
# Otherwise, the client will only receive a «403 Forbidden» message.
#

#
# UserDir is disabled by default since it can confirm the presence
# of a username on the system (depending on home directory
# permissions).
#
UserDir disabled

#
# To enable requests to /

user/ to serve the user’s public_html
# directory, remove the «UserDir disabled» line above, and uncomment
# the following line instead:
#
#UserDir public_html

#
# Control access to UserDir directories. The following is an example
# for a site where these directories are restricted to read-only.
#

AllowOverride FileInfo AuthConfig Limit Indexes
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
Require method GET POST OPTIONS

Если внимательно вчитаться в комментарии этого файла, то почти все становится понятно сразу.
Комментируем строку №16 — отключаем отключение самой возможности UserDir.
Убираем комментарий в строке №23 — указываем название каталога «хомяке».
И после предпоследней строки №33 мы добавим еще одну строчку:

Она разрешит httpd «отдавать» каталоги пользователям.

В общем и целом файл должен после нас выглядеть так:

user request is received.
#
# The path to the end user account ‘public_html’ directory must be
# accessible to the webserver userid. This usually means that

userid
# must have permissions of 711,

userid/public_html must have permissions
# of 755, and documents contained therein must be world-readable.
# Otherwise, the client will only receive a «403 Forbidden» message.
#

#
# UserDir is disabled by default since it can confirm the presence
# of a username on the system (depending on home directory
# permissions).
#
# UserDir disabled

#
# To enable requests to /

user/ to serve the user’s public_html
# directory, remove the «UserDir disabled» line above, and uncomment
# the following line instead:
#
UserDir public_html

#
# Control access to UserDir directories. The following is an example
# for a site where these directories are restricted to read-only.
#

AllowOverride FileInfo AuthConfig Limit Indexes
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
Require method GET POST OPTIONS
Require all granted

Сохраняем файл.
Перезапускаем httpd командой от root’а:

С этого момента договоримся, что нашего пользователя зовут IMUSER, просто меняйте это слово на название своего пользователя.

Создаем пользовательский каталог (конечно команду надо выполнить от пользователя):

Теперь займемся разрешениями.
Сперва разрешим демону httpd смотреть в каталог пользователя (от root’а):

Эта команда включит флаги «x» (для каталогов это флаг просмотра каталога) для группы и прочих.

Теперь включим разрешения SELinux (также от root’а):

Эта команда разрешает демону httpd читать содержимое в пользовательских каталогах. И разрешает работу с ними вообще для httpd.

Ну и в заключении — проверим работу пользовательских каталогов все на том же простеньком файлике.
Выполняем от пользователя:

Проверяем.
Нам надо зайти по адресу: http://localhost/

IMUSER/test.php
Я специально не делаю этот адрес ссылкой. Помнишь еще о соглашении? 😉

Напоследок

Тут я записываю то, что не вошло в текст статьи, но может быть полезно или просто помочь.

Включаем автозапуск служб httpd и mariadb (mysql):

SELinux’у может не понравится попытка соединения httpd с подозрительной базой данных по сети (можно еще через сокет, это SELinux не блокирует).
«Лечится» это включением соответствующего флажка SELinux (от root’а):

Очень много полезного есть в man-страницах:
man httpd_selinux
man mysqld_selinux
Надо только установить пакет selinux-policy-devel

Я буду рад дополнить и/или изменить статью.
Комментарии, как всегда, приветствуются.

Источник

Оцените статью