Здравствуйте уважаемые участники сообщества. Есть сайт на Друпал 7 и vps хостинг под него.
Хостинг предлагает установку следующих систем:
- Arch Linux (64 bits)
- Centos 6 (64 bits)
- Centos 7 (64 bits)
- Cozycloud on Debian 8 (64 bits)
- Cpanel on CentOS 6 (64 bits)
- Debian 7 (Wheezy) (64 bits)
- Debian 8 (Jessie) (64 bits)
- Debian 9 (Stretch) (64 bits)
- Docker on Ubuntu 14.04 Server (64 bits)
- Docker on Ubuntu 16.04 Server (64 bits)
- Drupal (64 bits)
- Fedora 26 (64 bits)
- Kubuntu 14.04 Desktop (64 bits)
- LAMP 1.0 (64 bits)
- OpenVPN on Debian 8 (64 bits)
- Parallels Plesk 12 on Centos 6 (64 bits)
- Parallels Plesk 12 on Ubuntu 14.04 (64 bits)
- Plesk on Debian 8 (64 bits)
- Prestashop (64 bits)
- Ubuntu 14.04 Server (64 bits)
- Ubuntu 16.04 Server (64 bits)
- Ubuntu 18.04 Server (64 bits)
- VestaCP on Debian 8 (64 bits)
- Virtualmin on Debian 8 (64 bits)
Под Линуксом ни разу не работал и ни одна из этих систем мне не знакома.
Вопрос такой: какая из них, по Вашему мнению, лучше всего подходит для Друпал 7 и с какой лучше всего начать обучение?
Комментарии
Брать что-нибудь из DEB-based и забыть о существовании других ОС, если нет желания становиться бородатым админом с принтом оленей на груди.
Правильная настройка веб сервера - это сложная задача, люди этому годами учатся. Попробуйте для начала панели, например VestaCP.
Вопрос холиварный и на него невозможно дать однозначный ответ
Установка панели, это не настройка сервера.
Вопрос задан не с целью холивара. Прежде всего интересует опыт участников сообщества.
Приоритет, наверное, да, нужно отдать друюжелюбности системы, т.к. я начинающий.
Но конечно, не в ущерб стабильности и быстродействию.
Если очень хочется познакомиться с чудным миром GNU/Linux, то рекомендую начать с Ubuntu. Лучше с 16.04
Самая лучшая операционная система та, которую знаешь
к стате, эти и некоторые другие, это не ос
Parallels Plesk 12 on Centos 6 (64 bits)
Parallels Plesk 12 on Ubuntu 14.04 (64 bits)
Plesk on Debian 8 (64 bits)
Prestashop (64 bits)
особенно последняя:)
Для 7-го Ubuntu 14.04, вам наверняка потребуется php5, так как большинство модулей 7-го заточены, протестированы и отлично работают именно с этой версией php, с Ubuntu 16.04 могут быть сложности, так как в репозиториях для нее нет php5, а самостоятельно прикрутить будет очень не просто, тем паче если нет опыта. Для 8-го однозначно 16.04.
P.S. В репозиториях Canonical есть даже drush, который можно установить одной командой
sudo apt-get install drush
и прочие команды для Ubuntu не сложнее +тонны информации.Не работайте с таким старым ПО!
И не советуйте с ним работать остальным!
Эта лучшая Ubuntu, была у меня 16.04 не в восторге, 17 там же, все надежды на 18
https://www.ubuntu.com/info/release-end-of-life
http://php.net/supported-versions.php
Drush, из репозиториев каноникал - тоже, еще рунами в пещерах высечен был.
Да и над 7кой, уже только благодаря количественным показателям изображается рабочий процесс.
На 18.04 видел обзор, говорят производительность возросла намного, работает быстро. Скринкаст был записан на машине с 2 процессорами и 2 гигами памяти. Автор показал сколько запущено программ одновременно + скринкаст писать с софтом для убунты не так то просто, сам писал и только из за глюков пока приостановился. Спасибо за ссылку, скачиваю десктоп, однако не уверен в рациональности использования необкатанного ПО на рабочих серверах
Я Ubuntu использую только дома. На серверах только Debian stable
14.04 ставить просто не разумно сейчас.
16.04 исторически наиболее качественный LTS от каноникал. Php 5.x, при необходимости, ставится из внешних репозиториев.
))) По первому запросу:
УСТАНОВКА DRUPAL НА APACHE В UBUNTU 14.04
Для выполнения инструкций необходим предварительно настроенный сервер Ubuntu 14.04; чтобы узнать, как выполнить начальную настройку сервера Ubuntu 14.04, читайте эту статью.
Также нужно предварительно установить программный стек LAMP. Инструкции по установке этой группы программ – здесь.
После установки Apache, PHP и MySQL нужно внести дополнительные поправки в настройки этих программ.
Создание БД и пользователя MySQL для Drupal
Сначала нужно создать пользователя и БД MySQL для новой установки Drupal.
Запустите сессию MySQL:
mysql -u root -p
Введите root-пароль MySQL.
Пройдя аутентификацию, вы увидите командную строку MySQL. Создайте БД для Drupal (для примера назовём её drupal).
CREATE DATABASE drupal;
Затем создайте пользователя, при помощи которого Drupal сможет подключиться к БД (в руководстве используется условное имя пользователя drupaluser):
CREATE USER drupaluser@localhost IDENTIFIED BY 'password';
Примечание: Замените условные данные в командах своими данными.
Итак, теперь БД и пользователь готовы. Осталось передать пользователю права на эту БД. Для корректной работы Drupal нужны довольно широкие права доступа. Ниже приводится хороший пример настройки прав, который позволит программе функционировать должным образом, при этом не подвергая базу данных опасности:
GRANT SELECT,INSERT,UPDATE,DELETE,CREATE,DROP,INDEX,ALTER,CREATE TEMPORARY TABLES,LOCK TABLES ON drupal.* TO drupaluser@localhost;
Теперь у пользователя есть все необходимые права для управления БД. Чтобы обновить настройки, используйте:
FLUSH PRIVILEGES;
Закройте интерактивную сессию MySQL:
exit
Это вернёт сессию bash.
Установка модулей и отладка PHP
После этого нужно установить несколько важных модулей PHP. Все они хранятся в стандартных репозиториях Ubuntu.
Установите их, предварительно обновив список пакетов.
sudo apt-get update
sudo apt-get install php5-gd php5-curl libssh2-php
Теперь, согласно рекомендациям разработчиков Drupal, нужно отредактировать настройки PHP. Откройте конфигурационный файл PHP сервера Apache:
sudo nano /etc/php5/apache2/php.ini
Найдите директивы expose_php и allow_url_fopen и измените их значение на Off:
. . .
expose_php = Off
. . .
allow_url_fopen = Off
. . .
Сохраните и закройте файл.
Файлы .htaccess
После этого нужно настроить Apache. во-первых, необходимо включить переопределение настроек. Это позволит системе Drupal трансформировать URL-адреса в удобные для восприятия строки.
Модуль mod_rewrite, отвечающий за переопределение настроек, установлен по умолчанию, но не включен. Чтобы включить его, введите:
sudo a2enmod rewrite
Модуль будет включен после перезапуска Apache. Но прежде чем перезапустить веб-сервер, нужно настроить виртуальные хосты для использования файлов .htaccess. Этот файл содержит правила перезаписи и включен по умолчанию в установку Drupal.
Откройте стандартный виртуальный хост.
sudo nano /etc/apache2/sites-enabled/000-default.conf
Найдите блок VirtualHost и добавьте в него блок кода для root-каталога сайта. Добавьте директиву AllowOverride и установите значение All. Можно также добавить директиву ServerName, указывающую на доменное имя, а также отредактировать ServerAdmin, указав email.
. . .
ServerName example.com
ServerAdmin webmaster@example.com
DocumentRoot /var/www/html
AllowOverride All
. . .
Сохраните и закройте файл.
Теперь нужно перезапустить веб-сервер, чтобы обновить настройки Apache and PHP:
sudo service apache2 restart
Установка файлов Drupal
Теперь система полностью готова к установке Drupal в root-каталог проекта.
На самом деле, нужно изначально распаковать файлы в домашнем каталоге, а затем скопировать их в root-каталог. Таким образом, у вас останется доступ к оригинальным файлам в случае, если что-то пойдет не так.
Откройте страницу загрузки Drupal и найдите последнюю версию в разделе Recommended releases. Кликните правой кнопкой по ссылке tar.gz необходимой версии и скопируйте адрес ссылки.
Вернитесь на сервер, откройте домашний каталог и при помощи wget загрузите файлы:
cd ~
wget http://ftp.drupal.org/files/projects/drupal-7.59.tar.gz
Примечание: Скорее всего, ваша ссылка будет отличаться от ссылки, приведённой в команде.
После загрузки файла извлеките программу:
tar xzvf drupal*
Перейдите к только что загруженной структуре каталогов и используйте rsync, чтобы скопировать файлы в root-каталог сайта. В данной команде точка указывает на текущий каталог; это позволит скопировать скрытые файлы:
cd drupal*
sudo rsync -avz . /var/www/html
Теперь файлы скопированы, а в домашнем каталоге остались их оригиналы, которые можно использовать в случае необходимости. Откройте root-каталог проекта:
cd /var/www/html
Подготовка Drupal к установке
Установочный веб-скрипт требует внести в каталог Drupal некоторые изменения. Это нужно сделать заранее, чтобы не переключаться между веб-браузером и командной строкой во время установки программы.
Создайте новый каталог files в sites/default:
mkdir /var/www/html/sites/default/files
Затем скопируйте стандартный файл settings, содержащий активные настройки Drupal:
cp /var/www/html/sites/default/default.settings.php /var/www/html/sites/default/settings.php
Нужно временно изменить права доступа к активному файлу settings. Передайте группе-владельцу файла права на запись. После установки это нужно изменить.
chmod 664 /var/www/html/sites/default/settings.php
После этого нужно предать права на файл пользователю веб-сервера (www-data).
sudo chown -R :www-data /var/www/html/*
Теперь сервер настроен и готов к запуску установки.
Установка Drupal
Оставшиеся действия нужно выполнить в браузере. Откройте браузер и перейдите:
http://server_domain_or_IP
На экране появится начальная страница установки Drupal.
В большинстве случаев рекомендуется выбрать установку Standard. Затем нажмите Save and continue. Укажите сведения о базе данных и пользователе.
В данном руководстве используются условные данные drupal, drupaluser и password. Укажите вместо них свои данные, а затем нажмите Save and continue.
Примечание: На данном этапе может вернуться страница настройки БД. Если это произошло, просто обновите страницу.
Программа сообщит, что теперь необходимо изменить права доступа к файлу конфигураций. Это можно будет сделать через пару минут, но сначала нужно указать основную информацию о сайте. Заполните поля соответствующей информацией.
Нажмите Save and Continue. Теперь можно посетить свой сайт, введя домен.
Установка Drupal успешно завершена.
Осталось только изменить права доступа к конфигурационному файлу.
chmod 644 /var/www/html/sites/default/settings.php
Это заблокирует внесение изменений в файл settings.
P.S. Однако лучше делать иначе.
Это плохой вариант для продакшена, начиная с выбора Apache mpm prefork, без чего-то перед ним, и заканчивая редактированием дефлотного vhost. Т.е. это просто сборник вредных советов.
Ну и это, только маленький кусочек того, что надо сделать на сервере.
Это не вариант, а пример запроса в поиске, живо говорящий о том, что в отношении пользовательской информации Ubuntu впереди всех
Это пример того, что в интернете масса всякого мусора...
Ubuntu или Debian. А вообще какая цель? Какой проект? Просто так выбирать систему смысла не имеет, если система настроена на работу с PHP и MYSQL любая подойдет. Главное чтобы на SSD стояла. И вообще если вы задаете вопрос по выбору системы, предположу что опыта работы с Linux у вас нет и соответственно без панели управления не сможете настроить самостоятельно все либо потребуется время на изучение. А для изучения любая подойдет ОС, чтобы побаловаться.
Вот это точно не рекомендуется Arch Linux (64 bits) для начинающих, с ней и не начинающий не каждый совладает, там все самому нужно ставить и конфигурировать
Ну вот почему? Голый дебиан в минимальной поставке не сильно отличается от голого арча. Арч не подойдёт скорее потому, что там слишком новые версии пакетов, ну и стабильность пакетов может вызывать сомнения для использования на сервере. Но никак не из-за сложности.
Арч не стабилен, и трудоёмок в обслуживании. Именно по этому не подходит. Но он не сложнее любого другого дистра, ну может кроме LFS.
Из вашего списка подходящими операционными системами являются:
Остальное, либо не подходит, либо не операционки, либо безнадёжно устарело.
Лично я предпочитаю Debian. И использую либо его, либо основанную на нём Ubuntu, которая зачастую имеет несколько более свежую пакетную базу.
Plesk, СPanel, Vesta, Virtualmin, это панели управления хостингом. Две последние использовать крайне не рекомендую. Ещё есть довольно приличный IspManager. И есть IspConfig бесплатный, который так себе, но куда лучше той же Vesta.
Для своего одиночного проекта вам не нужна панель, и её установка не заменяет настройку сервера...
Использование Docker, в принципе, может быть оправдано, даже в продакшене, если вы умеете его правильно готовить... Но тут лучше 10 раз подумать.
P.S. Учиться, лучше не на рабочем проекте, иначе учёба может дорого обойтись. А для него лучше найти кого-нибудь кто качественно настроит вам сервер.
Я за Centos 7 на сервере.
centos/debian. debian скорее.
На серваках у меня стоит Centos 7 и Debian 9. Для начинающего лучше всё же дебиан, там с одной стороны всё канонiчно, с другой стабильность именно для серверов.
Если сайтов несколько - ставьте панель управления хостингом. Из бесплатных приличная VestaCP, из платных без вариантов IspManager.
Критическая уязвимость и массовые взломы хостинг-панели VestaCP
На самом деле, удивительно, что только сейчас. Панель кривущая напрочь. Автор, вероятно, довольно слабо знаком с администрированием, чтобы такой проект делать. А если посмотреть шаблоны конфигов nginx, для работы с php-fpm, так просто слёзы наворачиваются... Настройки ПО при обновлениях слетают. Затираются при обновлениях пользовательские шаблоны конфигов. Настройки по умолчанию отвратительны. В общем, это ппц.
Из бесплатных есть ничеготак ispConfig3, если уж на то пошло, что всем так эта веста далась, вообще не понимаю.
У меня оная пашет на домашнем сервере. Интерфейс удобен для новичков и для лентяев.
Если же говорить о настройке веб-сервера по феншую, то это, ИМХО, вообще не про панельки.
P.S. Ну а дыры у всех бывают.
Дыры могут быть, теоретически, у всех, но качество проекта в целом очень низкое. Много откровенно не удачных решений в настройках. Откровенно кривых конфигов и.т.п. Проблем вылезающих при обновлениях панели. Я выше писал, вроде, она умудрялась затирать пользовательские _шаблоны_ настроек, например.
Я поддерживал несколько проектов где была эта панель, везде, в итоге, отказались от этого безобразия - вреда было больше чем удобства.
Я не сталкивался с такими проблемами. Внутрь правда не лез, ничего не могу сказать.
ИМХО проблемы возникают при попытке использовать простой инструмент для сложных задач. Веста это не про стопиццот сайтов с высокой нагрузкой.
Она и использовалась там в вариантах "для пары-тройки сайтов на виртуалке".
Там где нагрузка, и много сайтов, обычно, есть деньги на адекватные инструменты.
Поставил сначала Убунту 16.04 - она слилась из-за моих кривых ручек (после chmod прав для нового пользователя).
В итоге поставил debian. А вообще я так понял в случае сервера разницы никакой в плане команд в терминале. Они одни и те же почти всегда.
Посмотрел Веста панель, потом удалил ее. Не вижу в ней смысла, все можно и так делать через терминал.
Ну между убунтой и дебиан разницы особой понятно не будет. А так да, хоть генту на серве крутить можно.
*nix системы требуют внимательности
От корявого применения chmod любая ляжет:) Это ж никсы, там можно что угодно.
Разницы в командах - смотря что под этим подразумевать. Если утилита, ну к примеру ping, то она во всех дистрибутивах одинаковая. А вот пакетный менеджер может быть очень даже разным.