Поиск по сайту:

Как установить Concrete5 CMS с Apache и бесплатным Lets Encrypt SSL на Ubuntu 20.04


На этой странице

  1. Требования
  2. Начало работы
  3. Установите Apache, MariaDB и PHP
  4. Создание базы данных Concrete5
  5. Скачать Concrete5 CMS
  6. Настройка Apache для Concrete5 CMS
  7. Доступ к веб-интерфейсу Concrete5 CMS
  8. Защитите Concrete5 с помощью Lets Encrypt SSL
  9. Заключение

Concrete5 — это система управления контентом с открытым исходным кодом, используемая для публикации контента в Интернете. Он написан на PHP и использует MariaDB в качестве базы данных. Он предоставляет простой в использовании конструктор, который поможет вам создавать страницы и контент через веб-браузер. Он гибок, безопасен, готов к работе с мобильными устройствами и основан на архитектуре Model-View-Controller. Он предлагает богатый набор функций, включая редактор контента WYSIWYG, медиа-менеджер, перетаскивание контента, редактирование в контексте и многое другое.

В этом посте мы покажем вам, как установить Concrete5 CMS с Apache и Lets Encrypt SSL на сервере Ubuntu 20.04.

Требования

  • Сервер под управлением Ubuntu 20.04.
  • Действительное доменное имя указывает на IP-адрес сервера.
  • На вашем сервере настроен пароль root.

Начиная

Во-первых, вам нужно будет обновить индекс пакетов APT до последней версии. Вы можете обновить его с помощью следующей команды:

apt-get update -y

Как только индекс APT будет обновлен, вы можете перейти к следующему шагу.

Установите Apache, MariaDB и PHP

Затем вам нужно будет установить веб-сервер Apache, сервер базы данных MariaDB, PHP и другие расширения PHP на ваш сервер. Вы можете установить их все, используя следующую команду:

apt-get install apache2 mariadb-server php libapache2-mod-php libapache2-mod-php php-common php-mbstring php-xmlrpc php-soap php-gd php-xml php-intl php-mysql php-cli php-ldap php-zip php-curl -y

После установки всех пакетов отредактируйте файл php.ini и установите нужные значения:

nano /etc/php/7.4/apache2/php.ini

Измените следующие строки:

file_uploads = On
allow_url_fopen = On
memory_limit = 256M
upload_max_filesize = 64M
date.timezone = Asia/Kolkata

Сохраните и закройте файл, когда закончите, затем перезапустите службу Apache, чтобы применить изменения:

systemctl restart apache2

Как только вы закончите, вы можете перейти к следующему шагу.

Создайте базу данных Concrete5

Далее вам нужно будет создать базу данных и пользователя для Concrete5. Сначала войдите в MariaDB с помощью следующей команды:

mysql

После входа в систему создайте базу данных и пользователя с помощью следующей команды:

MariaDB [(none)]> CREATE DATABASE concrete5;
MariaDB [(none)]> CREATE USER 'concrete5user'@'localhost' IDENTIFIED BY 'password';

Затем предоставьте все привилегии базе данных Concrete5 с помощью следующей команды:

MariaDB [(none)]> GRANT ALL ON concrete5.* TO 'concrete5user'@'localhost' IDENTIFIED BY 'password' WITH GRANT OPTION;

Затем сбросьте привилегии и выйдите из консоли MariaDB с помощью следующей команды:

MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Как только вы закончите, вы можете перейти к следующему шагу.

Скачать Concrete5 CMS

Сначала перейдите на веб-сайт Concrete5 CMS, скопируйте URL-адрес последней версии Concrete5 и загрузите ее с помощью следующей команды:

wget --trust-server-names https://www.concrete5.org/download_file/-/view/115589/ -O concrete5.zip

После завершения загрузки извлеките загруженный файл с помощью следующей команды:

unzip concrete5.zip

Затем переместите извлеченный каталог в корневой веб-каталог Apache с помощью следующей команды:

mv concrete5-* /var/www/html/concrete5

Затем установите правильное разрешение и право собственности на каталог convert5 с помощью следующей команды:

chown -R www-data:www-data /var/www/html/concrete5/
chmod -R 755 /var/www/html/concrete5/

Как только вы закончите, вы можете перейти к следующему шагу.

Настройте Apache для CMS Concrete5

Далее вам нужно будет создать файл конфигурации виртуального хоста Apache для Concrete5 CMS. Вы можете создать его с помощью следующей команды:

nano /etc/apache2/sites-available/concrete5.conf

Добавьте следующие строки:

<VirtualHost *:80>
     ServerAdmin 
     DocumentRoot /var/www/html/concrete5/
     ServerName concrete5.example.com

     <Directory /var/www/html/concrete5/>
        Options +FollowSymlinks
        AllowOverride All
        Require all granted
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/error.log
     CustomLog ${APACHE_LOG_DIR}/access.log combined

</VirtualHost>

Сохраните и закройте файл, затем включите виртуальный хост Apache и перепишите модуль с помощью следующей команды:

a2ensite concrete5.conf
a2enmod rewrite

Затем перезапустите службу Apache, чтобы применить изменения:

systemctl restart apache2

Вы также можете проверить статус службы Apache с помощью следующей команды:

systemctl status apache2

Вы должны получить следующий результат:

? apache2.service - The Apache HTTP Server
     Loaded: loaded (/lib/systemd/system/apache2.service; enabled; vendor preset: enabled)
     Active: active (running) since Sat 2021-05-15 15:00:03 UTC; 4s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 15566 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 15585 (apache2)
      Tasks: 6 (limit: 2353)
     Memory: 13.5M
     CGroup: /system.slice/apache2.service
             ??15585 /usr/sbin/apache2 -k start
             ??15586 /usr/sbin/apache2 -k start
             ??15587 /usr/sbin/apache2 -k start
             ??15588 /usr/sbin/apache2 -k start
             ??15589 /usr/sbin/apache2 -k start
             ??15590 /usr/sbin/apache2 -k start

May 15 15:00:03 ubunt4 systemd[1]: Starting The Apache HTTP Server...

На данный момент веб-сервер Apache настроен для размещения Concrete5 CMS. Теперь вы можете перейти к следующему шагу.

Доступ к веб-интерфейсу Concrete5 CMS

Теперь откройте веб-браузер и войдите в веб-интерфейс Concrete5 CMS, используя URL-адрес http://concrete5.example.com. Вы будете перенаправлены на следующую страницу:

Выберите свой язык и нажмите кнопку со стрелкой. Вы должны увидеть следующую страницу:

Убедитесь, что все необходимые библиотеки установлены, затем нажмите кнопку «Продолжить установку». Вы должны увидеть следующую страницу:

Здесь укажите имя пользователя администратора, пароль, имя пользователя базы данных, пароль и имя базы данных, затем нажмите кнопку «Установить Concrete5», чтобы начать установку. После завершения установки вы должны увидеть следующую страницу:

Теперь нажмите кнопку «Редактировать свой сайт», вы должны увидеть панель инструментов Concrete5 на следующей странице:

Защитите Concrete5 с помощью Lets Encrypt SSL

Далее рекомендуется защитить ваш сайт с помощью Lets Encrypt SSL. Сначала установите клиент Certbot с помощью следующей команды:

apt-get install python3-certbot-apache -y

После установки выполните следующую команду, чтобы защитить свой сайт с помощью Lets Encrypt SSL:

certbot --apache -d concrete5.example.com

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

Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator standalone, Installer None
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
Plugins selected: Authenticator apache, Installer apache
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for concrete5.example.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/concrete5-le-ssl.conf
Enabled Apache socache_shmcb module
Enabled Apache ssl module
Deploying Certificate to VirtualHost /etc/apache2/sites-available/concrete5-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/concrete5-le-ssl.conf

Затем выберите, следует ли перенаправлять HTTP-трафик на HTTPS, как показано ниже:

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 и нажмите Enter, чтобы установить Lets Encrypt SSL для вашего сайта:

Enabled Apache rewrite module
Redirecting vhost in /etc/apache2/sites-enabled/concrete5.conf to ssl vhost in /etc/apache2/sites-available/concrete5-le-ssl.conf

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Congratulations! You have successfully enabled https://concrete5.example.com

You should test your configuration at:
https://www.ssllabs.com/ssltest/analyze.html?d=concrete5.example.com
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at:
   /etc/letsencrypt/live/concrete5.example.com/fullchain.pem
   Your key file has been saved at:
   /etc/letsencrypt/live/concrete5.example.com/privkey.pem
   Your cert will expire on 2020-10-23. 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"
 - 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

Теперь вы можете безопасно получить доступ к Concrete 5, используя URL-адрес https://concrete5.example.com.

Заключение

В приведенном выше руководстве вы узнали, как установить Concrete5 CMS с Apache и Lets Encrypt SSL в Ubuntu 20.04. Теперь вы можете легко публиковать свой контент в Интернете с помощью Concrete5 CMS. Не стесняйтесь спрашивать меня, если у вас есть какие-либо вопросы.