Как установить Automad CMS с Apache и Lets encrypt на Debian 10
На этой странице
- Требования
- Начало работы
- Установите Apache и PHP
- Установить Automad
- Настройка Apache для Automad
- Доступ к Automad
- Защитите Automad с помощью Lets Encrypt
Automad — это бесплатная плоская система управления контентом с открытым исходным кодом, написанная на языке PHP. Он быстрый, отзывчивый и предлагает функции, которые могут быть недоступны для других CMS на основе PHP. Automad использует текстовый файл для хранения своего содержимого вместо базы данных. Automad предоставляет веб-интерфейс для управления сайтом, системными настройками, загрузки изображений и написания сообщений в блогах. Он поставляется со встроенным редактором Markdown и средством обновления одним щелчком мыши, чтобы поддерживать Automad в актуальном состоянии.
В этом руководстве мы покажем вам, как установить Automad CMS на Debian 10 с помощью веб-сервера Apache.
Требования
- Сервер под управлением Debian 10.
- Для вашего сервера установлен корневой пароль.
Начиная
Перед запуском вам нужно будет обновить вашу систему до последней версии. Вы можете сделать это, выполнив следующую команду:
apt-get update -y
apt-get upgrade -y
После обновления сервера перезапустите его, чтобы изменения вступили в силу.
Установите Апач и PHP
Automad основан на PHP и работает на веб-сервере. Поэтому вам нужно будет установить Apache, PHP и другие необходимые модули на ваш сервер. Вы можете установить их все, выполнив следующую команду:
apt-get install apache2 php libapache2-mod-php php-zip php-curl php-mbstring php-gd php-xml php-xmlrpc php-soap unzip -y
После установки всех пакетов запустите веб-сервер Apache и включите его при перезагрузке системы с помощью следующей команды:
systemctl start apache2
systemctl enable apache2
Как только вы это сделаете, вы можете перейти к следующему шагу.
Установить Automad
Во-первых, вам нужно будет загрузить последнюю версию Automad из репозитория Bitbucket. Вы можете скачать его с помощью следующей команды:
wget https://bitbucket.org/marcantondahmen/automad/get/default.zip
После завершения загрузки извлеките загруженный файл с помощью следующей команды:
unzip default.zip
Затем переместите извлеченный каталог в корневой каталог Apache с помощью следующей команды:
mv marcantondahmen-automad-c241e88edc3c /var/www/html/automad
Затем измените владельца каталога automad на www-data и дайте соответствующее разрешение с помощью следующей команды:
chown -R www-data:www-data /var/www/html/automad
chmod -R 755 /var/www/html/automad
Как только вы это сделаете, вы можете перейти к следующему шагу.
Настроить Apache для Automad
Далее вам нужно будет создать файл конфигурации виртуального хоста Apache для сервера Automad. Вы можете создать его с помощью следующей команды:
nano /etc/apache2/sites-available/automad.conf
Добавьте следующее содержимое:
<VirtualHost *:80> ServerAdmin DocumentRoot /var/www/html/automad ServerName example.com <Directory /var/www/html/automad> Options FollowSymlinks AllowOverride All Require all granted </Directory> ErrorLog ${APACHE_LOG_DIR}/automadcms_error.log CustomLog ${APACHE_LOG_DIR}/automadcms_access.log combined </VirtualHost>
Сохраните и закройте файл, когда закончите. Затем проверьте Apache на наличие синтаксических ошибок с помощью следующей команды:
apachectl configtest
Если все в порядке, вы должны получить следующий вывод:
AH00558: apache2: Could not reliably determine the server's fully qualified domain name, using 127.0.1.1. Set the 'ServerName' directive globally to suppress this message Syntax OK
Затем включите виртуальный хост Apache и перепишите модуль с помощью следующей команды:
a2ensite automad
a2enmod rewrite
Наконец, перезапустите веб-сервер Apache, чтобы применить изменения конфигурации:
systemctl restart apache2
Как только вы закончите, вы можете перейти к следующему шагу.
Доступ к Automad
Теперь Automad установлен и настроен, пришло время получить доступ к веб-интерфейсу Automad.
Откройте веб-браузер и введите URL-адрес http://example.com. Вы будете перенаправлены на сайт Automad на следующем экране:
Чтобы создать учетную запись Automad, откройте веб-браузер и перейдите по URL-адресу http://example.com/dashboard. Вы будете перенаправлены на следующую страницу:
Теперь укажите желаемое имя пользователя и пароль, затем нажмите кнопку «Загрузить файл учетных записей», чтобы загрузить регистрационную форму пользователя и скопировать ее в каталог конфигурации:
mv config.php /var/www/html/automad/config/
Затем дайте надлежащее разрешение файлу config.php с помощью следующей команды:
chown -R www-data:www-data /var/www/html/automad/config/config.php
Теперь откройте веб-браузер и введите URL-адрес http://example.com/dashboard. Вы должны увидеть страницу входа в Automad:
Теперь введите свое имя пользователя и пароль и нажмите кнопку «Войти». Вы должны увидеть панель инструментов Automad CMS по умолчанию на следующей странице:
Защитите Automad с помощью Lets Encrypt
Во-первых, вам нужно будет установить инструмент Certbot, чтобы загрузить и установить бесплатный SSL Lets Encrypt для вашего веб-сайта.
Сначала добавьте репозиторий Certbot с помощью следующей команды:
apt-get install software-properties-common
add-apt-repository ppa:certbot/certbot
Затем обновите репозиторий и установите Certbot с помощью следующей команды:
apt-get update -y
apt-get install certbot python-certbot-apache -y
После установки вам нужно будет создать каталог .well-known внутри каталога letsencrypt. Вы можете создать его с помощью следующей команды:
mkdir -p /var/lib/letsencrypt/.well-known
Далее вам нужно будет предоставить соответствующие разрешения для каталога letsencrypt. Вы можете сделать это с помощью следующей команды:
chgrp www-data /var/lib/letsencrypt
chmod g+s /var/lib/letsencrypt
Затем создайте файл well-known.conf с помощью следующей команды:
nano /etc/apache2/conf-available/well-known.conf
Добавьте следующие строки:
Alias /.well-known/acme-challenge/ "/var/lib/letsencrypt/.well-known/acme-challenge/" <Directory "/var/lib/letsencrypt/"> AllowOverride None Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec Require method GET POST OPTIONS </Directory>
Сохраните и закройте файл. Затем включите необходимые модули с помощью следующей команды:
a2enmod ssl
a2enmod http2
a2enmod headers
a2enconf well-known
Затем перезапустите службу Apache, чтобы применить все изменения конфигурации:
systemctl restart apache2
Теперь установите бесплатный SSL Lets Encrypt для своего домена example.com, выполнив следующую команду:
certbot --apache -d example.com
Во-первых, вам нужно будет указать действующий адрес электронной почты и согласиться с условиями обслуживания, как показано ниже:
Saving debug log to /var/log/letsencrypt/letsencrypt.log Plugins selected: Authenticator apache, Installer apache Enter email address (used for urgent renewal and security notices) (Enter 'c' to cancel): - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Please read the Terms of Service at https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must agree in order to register with the ACME server at https://acme-v02.api.letsencrypt.org/directory - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (A)gree/(C)ancel: A - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Would you be willing to share your email address with the Electronic Frontier Foundation, a founding partner of the Let's Encrypt project and the non-profit organization that develops Certbot? We'd like to send you email about our work encrypting the web, EFF news, campaigns, and ways to support digital freedom. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - (Y)es/(N)o: Y Obtaining a new certificate Performing the following challenges: http-01 challenge for example.com Enabled Apache rewrite module Waiting for verification... Cleaning up challenges Created an SSL vhost at /etc/apache2/sites-available/example.com-le-ssl.conf Deploying Certificate to VirtualHost /etc/apache2/sites-available/example.com-le-ssl.conf Enabling available site: /etc/apache2/sites-available/example.com-le-ssl.conf Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - 1: No redirect - Make no further changes to the webserver configuration. 2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for new sites, or if you're confident your site works on HTTPS. You can undo this change by editing your web server's configuration. - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Select the appropriate number [1-2] then [enter] (press 'c' to cancel): 2
Затем выберите вариант 2, чтобы загрузить и установить бесплатный SSL-сертификат для своего домена. После успешного завершения установки. Вы должны получить следующий результат:
Enabled Apache rewrite module Redirecting vhost in /etc/apache2/sites-enabled/example.com.conf to ssl vhost in /etc/apache2/sites-available/ example.com-le-ssl.conf - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Congratulations! You have successfully enabled https://example.com You should test your configuration at: https://www.ssllabs.com/ssltest/analyze.html?d=example.com - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - IMPORTANT NOTES: - Congratulations! Your certificate and chain have been saved at: /etc/letsencrypt/live/example.com/fullchain.pem Your key file has been saved at: /etc/letsencrypt/live/example.com/privkey.pem Your cert will expire on 2019-10-22. To obtain a new or tweaked version of this certificate in the future, simply run certbot again with the "certonly" option. To non-interactively renew *all* of your certificates, run "certbot renew" - Your account credentials have been saved in your Certbot configuration directory at /etc/letsencrypt. You should make a secure backup of this folder now. This configuration directory will also contain certificates and private keys obtained by Certbot so making regular backups of this folder is ideal. - If you like Certbot, please consider supporting our work by: Donating to ISRG / Let's Encrypt: https://letsencrypt.org/donate Donating to EFF: https://eff.org/donate-le
Ваша Automad CMS теперь защищена бесплатным SSL от Lets Encrypt. Вы можете получить к нему доступ, посетив URL-адрес https://example.com.