Веб-сервер: различия между версиями
(не показано 14 промежуточных версий этого же участника) | |||
Строка 18: | Строка 18: | ||
==Где хранится сайт?== | ==Где хранится сайт?== | ||
Открываем в редакторе от суперпользователя файл | Открываем в редакторе от суперпользователя файл {{path|/etc/httpd2/conf/sites-available/default.conf}}. | ||
Ищем строку | Ищем строку | ||
DocumentRoot "/var/www/html/" | DocumentRoot "/var/www/html/" | ||
Либо | Либо помещаем сайт туда, либо меняем путь на свой. | ||
==Сайты на движке PHP== | ==Сайты на движке PHP== | ||
Например, сайт лежит в каталоге /var/www/html/PhpBB3. Для него нужно дать доступ серверу Apache. | Например, сайт лежит в каталоге {{path|/var/www/html/PhpBB3}}. Для него нужно дать доступ серверу Apache. | ||
# chown -R apache2:apache2 /var/www/html/phpBB3 | # chown -R apache2:apache2 /var/www/html/phpBB3 | ||
# chmod -R 660 /var/www/html/phpBB3 | # chmod -R 660 /var/www/html/phpBB3 | ||
# chmod -R u+X /var/www/html/phpBB3 | # chmod -R u+X /var/www/html/phpBB3 | ||
Сайт будет доступен по ссылке http://IP/phpBB3/index.php | Сайт будет доступен по ссылке [http://IP/phpBB3/index.php http://IP/phpBB3/index.php] | ||
==Настройка PhpmyAdmin== | ==Настройка PhpmyAdmin== | ||
Строка 53: | Строка 53: | ||
*salomatin.ru | *salomatin.ru | ||
*ivaniov.ru | *ivaniov.ru | ||
посылают на 81.81.81.81 | посылают на 81.81.81.81, а apache сам решает в какой каталог одного сервера направлять эти запросы. | ||
===Шаг 1: Регистрируем домены на один IP адрес=== | ===Шаг 1: Регистрируем домены на один IP адрес=== | ||
Строка 71: | Строка 71: | ||
Тестируем со своего рабочего настольного компьютера от имени простого пользователя: | Тестируем со своего рабочего настольного компьютера от имени простого пользователя: | ||
ping host1 | $ ping host1 | ||
ping host2 | $ ping host2 | ||
ping host3 | $ ping host3 | ||
Должны попадать на IP сервера. | Должны попадать на IP сервера. | ||
Строка 92: | Строка 92: | ||
===Шаг 3: Прописываем виртуальные хосты=== | ===Шаг 3: Прописываем виртуальные хосты=== | ||
В файле /etc/httpd2/conf/sites-available/vhosts.conf дописываем | В файле {{path|/etc/httpd2/conf/sites-available/vhosts.conf}} дописываем | ||
<VirtualHost *:80> | <VirtualHost *:80> | ||
Строка 123: | Строка 123: | ||
===Шаг 4: Создаем домашние каталоги виртуальных хостов=== | ===Шаг 4: Создаем домашние каталоги виртуальных хостов=== | ||
В /var/www/vhosts создаем три каталога host1; host2; host3, в которых размещаем разные тестовые веб-страницы. | В {{path|/var/www/vhosts}} создаем три каталога host1; host2; host3, в которых размещаем разные тестовые веб-страницы. | ||
Заходим со своего рабочего настольного компьютера | Заходим со своего рабочего настольного компьютера | ||
Строка 141: | Строка 141: | ||
====Шаг №2: Создаем архивы ( на примере Joomla)==== | ====Шаг №2: Создаем архивы ( на примере Joomla)==== | ||
Заходим в каталог /var/www/html/ | Заходим в каталог {{path|/var/www/html/}} | ||
# cd /var/www/html/ | # cd /var/www/html/ | ||
# tar -cvf - joomla | gzip -c > joomla1.tar.gz | # tar -cvf - joomla | gzip -c > joomla1.tar.gz | ||
Строка 178: | Строка 178: | ||
====Шаг №2: Восстанавливаем каталог Joomla==== | ====Шаг №2: Восстанавливаем каталог Joomla==== | ||
Размещаем архив joomla1.tar.gz в каталоге /var/www/html/ и распаковываем его командой | Размещаем архив {{path|joomla1.tar.gz}} в каталоге {{path|/var/www/html/}} и распаковываем его командой | ||
# tar -zxvf joomla1.tar.gz | # tar -zxvf joomla1.tar.gz | ||
Строка 196: | Строка 196: | ||
===MediaWiki=== | ===MediaWiki=== | ||
{{Note|Я знаю, что можно устновить из пакетов, но хочу описать ручную установку}} | {{Note|Я знаю, что можно устновить из пакетов, но хочу описать ручную установку}} | ||
{{Note|Чтобы управлять файлами с сайтами через | {{Note|Чтобы управлять файлами с сайтами через файловый менеджер, можно открыть mc от root: su-;mc}} | ||
1. Ставим расширение: | 1. Ставим расширение: | ||
# apt-get install php7-fileinfo | # apt-get install php7-fileinfo | ||
2. Скачиваем архив с mediawiki: | 2. Скачиваем архив с mediawiki: | ||
*https://www.mediawiki.org/wiki/Download/ru | *https://www.mediawiki.org/wiki/Download/ru | ||
3. Распаковываем в /var/www/html/wiki/ | 3. Распаковываем в {{path|/var/www/html/wiki/}} | ||
4. Назначаем права | 4. Назначаем права | ||
# chown -R apache2:apache2 /var/www/html/wiki/ | # chown -R apache2:apache2 /var/www/html/wiki/ | ||
# chmod -R 660 /var/www/html/wiki/ | # chmod -R 660 /var/www/html/wiki/ | ||
# chmod -R u+X /var/www/html/wiki/ | # chmod -R u+X /var/www/html/wiki/ | ||
5. Через PhpMyAdmin добавляем БД | 5. Через PhpMyAdmin добавляем БД | ||
Сайт будет доступен по IP/wiki. | 6. Идем [http://localhost/wiki http://localhost/wiki] | ||
7. Настраиваем/устанавливаем mediawiki | |||
8. Кидаем файл с настройками в {{path|/var/www/html/wiki/}} | |||
Сайт будет доступен по [http://IP/wiki http://IP/wiki]. | |||
Если хотите доступ по IP кидайте заранее в папку www. | Если хотите доступ по IP кидайте заранее в папку www. | ||
===Почта=== | ===Почта=== | ||
1. Качаем | 1. Качаем | ||
https://afterlogic.org/webmail-lite | |||
2. Распаковываем в /var/www/html/mail/ | https://afterlogic.org/webmail-lite | ||
2. Распаковываем в {{path|/var/www/html/mail/}} | |||
3. Назначаем права | 3. Назначаем права | ||
# chown -R apache2:apache2 /var/www/html/mail/ | # chown -R apache2:apache2 /var/www/html/mail/ | ||
# chmod -R 660 /var/www/html/mail/ | # chmod -R 660 /var/www/html/mail/ | ||
# chmod -R u+X /var/www/html/mail/ | # chmod -R u+X /var/www/html/mail/ | ||
4. Идем localhost/mail | |||
5. Входим (логин superadmin, пароль пустой). Настраиваем. | 4. Идем http://localhost/mail | ||
5. Входим (логин superadmin, пароль пустой). Настраиваем. | |||
6. В PhpMyAdmin создаем БД | 6. В PhpMyAdmin создаем БД | ||
===Helpdesk=== | ===Helpdesk=== | ||
1. Качаем (v3) | 1. Качаем (v3) | ||
https://www.hesk.com/download.php | |||
2. Распаковываем в /var/www/html/helpdesk/ | https://www.hesk.com/download.php | ||
2. Распаковываем в /var/www/html/helpdesk/ | |||
3. Назначаем права | 3. Назначаем права | ||
# chown -R apache2:apache2 /var/www/html/helpdesk/ | # chown -R apache2:apache2 /var/www/html/helpdesk/ | ||
# chmod -R 660 /var/www/html/helpdesk/ | # chmod -R 660 /var/www/html/helpdesk/ | ||
# chmod -R u+X /var/www/html/helpdesk/ | # chmod -R u+X /var/www/html/helpdesk/ | ||
4. Идем localhost/helpdesk/install | |||
5. Устанавливаем | 4. Идем localhost/helpdesk/install | ||
6. | |||
5. Устанавливаем | |||
6. Удаляем папку localhost/helpdesk/install | |||
7. Русский язык - https://www.hesk.com/language/ - после скачивания и добавления не забудьте переназначить права | 7. Русский язык - https://www.hesk.com/language/ - после скачивания и добавления не забудьте переназначить права | ||
--------- | --------- | ||
Источник: [https://forum.altlinux.org/index.php?topic=29114.0 forum.altlinux.org] | Источник: [https://forum.altlinux.org/index.php?topic=29114.0 forum.altlinux.org] | ||
{{Category navigation|title=Начинающему системному администратору|category=Начинающему системному администратору|sortkey={{SUBPAGENAME}}}} | {{Category navigation|title=Начинающему системному администратору|category=Начинающему системному администратору|sortkey={{SUBPAGENAME}}}} |
Текущая версия от 20:32, 3 декабря 2024
Ставим пакеты:
# apt-get install lamp-server
Запускаем службы:
Apache:
# systemctl enable --now httpd2
MySQL:
# systemctl enable --now mysqld
Настройка Apache2
Открываем от имени суперпользователя:
# mcedit /etc/httpd2/conf/include/Directory_html_default.conf
Необходимо в строке
Options Includes FollowSymLinks MultiViews
дописать слово Indexes:
Options Indexes Includes FollowSymLinks MultiViews
Где хранится сайт?
Открываем в редакторе от суперпользователя файл /etc/httpd2/conf/sites-available/default.conf.
Ищем строку
DocumentRoot "/var/www/html/"
Либо помещаем сайт туда, либо меняем путь на свой.
Сайты на движке PHP
Например, сайт лежит в каталоге /var/www/html/PhpBB3. Для него нужно дать доступ серверу Apache.
# chown -R apache2:apache2 /var/www/html/phpBB3 # chmod -R 660 /var/www/html/phpBB3 # chmod -R u+X /var/www/html/phpBB3
Сайт будет доступен по ссылке http://IP/phpBB3/index.php
Настройка PhpmyAdmin
Ставим пакеты:
# apt-get install phpMyAdmin phpMyAdmin-apache2-php8.1
Страница PhpMyAdmin:
- http://127.0.0.1/phpMyAdmin - регистр соблюдать!
Под root пускать не будет, создадим другого пользователя.
# mysql # MariaDB [mysql]> CREATE USER 'phpmyadmin'@'localhost' IDENTIFIED BY 'пароль'; # MariaDB [mysql]> GRANT ALL PRIVILEGES ON *.* TO 'phpmyadmin'@'localhost' WITH GRANT OPTION; # MariaDB [mysql]> FLUSH PRIVILEGES;
Заходите под свежесозданным пользователем phpmyadmin.
Виртуальный хостинг
Виртуальный хостинг - это когда веб-запросы приходят на один IP - адрес, но под разными именами.
Например, DNS-имена:
- salomatin.ru
- ivaniov.ru
посылают на 81.81.81.81, а apache сам решает в какой каталог одного сервера направлять эти запросы.
Шаг 1: Регистрируем домены на один IP адрес
Для внешнего сайта необходимо зарегистрировать домен на регистраторе, для внутреннего на Bind. Если домен на Samba, то через Samba-tools.
Потом прописываем на сервере адреса в hosts:
# mcedit /etc/hosts
192.168.0.1 host1 192.168.0.1 host2 192.168.0.1 host3
Выполняем:
/etc/chroot.d/resolv.all
Тестируем со своего рабочего настольного компьютера от имени простого пользователя:
$ ping host1 $ ping host2 $ ping host3
Должны попадать на IP сервера.
Шаг 2: Разрешаем загружать виртуальные сайты
В файле /etc/httpd2/conf/sites-start.d/000-default.conf:
ports_all=yes default=yes vhosts=no
Необходимо изменить последнюю строку:
vhosts=yes
Для применения изменений запустить:
# a2chkconfig
Шаг 3: Прописываем виртуальные хосты
В файле /etc/httpd2/conf/sites-available/vhosts.conf дописываем
<VirtualHost *:80> #ServerAdmin webmaster@dummy-host.example.com DocumentRoot /var/www/vhosts/host1 ServerName host1 #ServerAlias http://www.host1 ErrorLog /var/log/httpd2/host1-error_log CustomLog /var/log/httpd2/host1-access_log common </VirtualHost> # <VirtualHost *:80> #ServerAdmin webmaster@dummy-host.example.com DocumentRoot /var/www/vhosts/host2 ServerName host2 #ServerAlias http://www.host2 ErrorLog /var/log/httpd2/host2-error_log CustomLog /var/log/httpd2/host2-access_log common </VirtualHost> # <VirtualHost *:80> #ServerAdmin webmaster@dummy-host.example.com DocumentRoot /var/www/vhosts/host3 ServerName host3 #ServerAlias http://www.host3 ErrorLog /var/log/httpd2/host3-error_log CustomLog /var/log/httpd2/host3-access_log common </VirtualHost>
Шаг 4: Создаем домашние каталоги виртуальных хостов
В /var/www/vhosts создаем три каталога host1; host2; host3, в которых размещаем разные тестовые веб-страницы.
Заходим со своего рабочего настольного компьютера
и в каждом видим свою тестовую страницу.
Архивирование, аварийное восстановление и перенос сайтов на PHP
На примере Joomla
Архивирование
Шаг №1: Останавливаем работу сайта
# systemctl stop httpd2
Шаг №2: Создаем архивы ( на примере Joomla)
Заходим в каталог /var/www/html/
# cd /var/www/html/ # tar -cvf - joomla | gzip -c > joomla1.tar.gz
Создаем архив базы данных. Выгрузить базу MySQL можно командой:
# mysqldump -u root -p vova_joomla > joomla1.sql
Спросит пароль рута или новый, если поменяли
Шаг №3: Запускаем работу сайта
# systemctl start httpd2
Копируем в надежное место
- joomla1.tar.gz
- joomla1.sql
Восстановление
Шаг №1: Восстанавливаем базу данных
Чтобы загрузить базу, нужно сначала создать пустую, а для надёжности предварительно удалить старую:
# mysql -u root -p
MySQL спросит пароль рута...
mysql> drop database if exists vova_joomla; mysql> create database vova_joomla; mysql> quit
...а затем в неё загрузить данные:
# mysql -u root -p vova_joomla < joomla1.sql
Спросит пароль рута.
Шаг №2: Восстанавливаем каталог Joomla
Размещаем архив joomla1.tar.gz в каталоге /var/www/html/ и распаковываем его командой
# tar -zxvf joomla1.tar.gz
Удаляем из каталога архив, проверяем права, если что подправляем.
# chown -R apache2:apache2 /var/www/html/joomla # chmod -R 660 /var/www/html/joomla # chmod -R u+X /var/www/html/joomla
Проверяем работу сайта.
Сайт восстановлен.
Установка сайтов
MediaWiki
1. Ставим расширение:
# apt-get install php7-fileinfo
2. Скачиваем архив с mediawiki:
3. Распаковываем в /var/www/html/wiki/
4. Назначаем права
# chown -R apache2:apache2 /var/www/html/wiki/ # chmod -R 660 /var/www/html/wiki/ # chmod -R u+X /var/www/html/wiki/
5. Через PhpMyAdmin добавляем БД
6. Идем http://localhost/wiki
7. Настраиваем/устанавливаем mediawiki
8. Кидаем файл с настройками в /var/www/html/wiki/
Сайт будет доступен по http://IP/wiki.
Если хотите доступ по IP кидайте заранее в папку www.
Почта
1. Качаем
https://afterlogic.org/webmail-lite
2. Распаковываем в /var/www/html/mail/
3. Назначаем права
# chown -R apache2:apache2 /var/www/html/mail/ # chmod -R 660 /var/www/html/mail/ # chmod -R u+X /var/www/html/mail/
4. Идем http://localhost/mail
5. Входим (логин superadmin, пароль пустой). Настраиваем.
6. В PhpMyAdmin создаем БД
Helpdesk
1. Качаем (v3)
https://www.hesk.com/download.php
2. Распаковываем в /var/www/html/helpdesk/
3. Назначаем права
# chown -R apache2:apache2 /var/www/html/helpdesk/ # chmod -R 660 /var/www/html/helpdesk/ # chmod -R u+X /var/www/html/helpdesk/
4. Идем localhost/helpdesk/install
5. Устанавливаем
6. Удаляем папку localhost/helpdesk/install
7. Русский язык - https://www.hesk.com/language/ - после скачивания и добавления не забудьте переназначить права
Источник: forum.altlinux.org