Установка CMS · 7 min read · Dec 21, 2025
Как установить Concrete5 CMS с Apache и бесплатным SSL Let's Encrypt на Ubuntu 20.04

Concrete5 — это система управления контентом с открытым исходным кодом, используемая для публикации контента в интернете. Она написана на PHP и использует MariaDB в качестве базы данных. Она предоставляет удобный конструктор, который помогает создавать страницы и контент через веб-браузер. Она гибкая, безопасная, готовая к мобильным устройствам и основана на архитектуре Model-View-Controller. Она предлагает богатый набор функций, включая WYSIWYG-редактор контента, менеджер медиафайлов, перетаскивание контента, редактирование в контексте и многое другое.
В этом посте мы покажем вам, как установить Concrete5 CMS с Apache и SSL Let’s Encrypt на сервере 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Далее установите правильные разрешения и владельца для каталога concrete5 с помощью следующей команды:
chown -R www-data:www-data /var/www/html/concrete5/
chmod -R 755 /var/www/html/concrete5/После завершения вы можете перейти к следующему шагу.
Настройка Apache для Concrete5 CMS
Далее вам нужно создать файл конфигурации виртуального хоста Apache для Concrete5 CMS. Вы можете создать его с помощью следующей команды:
nano /etc/apache2/sites-available/concrete5.confДобавьте следующие строки:
ServerAdmin [email protected]
DocumentRoot /var/www/html/concrete5/
ServerName concrete5.example.com
Options +FollowSymlinks
AllowOverride All
Require all granted
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
Сохраните и закройте файл, затем включите виртуальный хост 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 ubuntu2004 systemd[1]: Starting The Apache HTTP Server...На этом этапе веб-сервер Apache настроен для хостинга Concrete5 CMS. Теперь вы можете перейти к следующему шагу.
Доступ к веб-интерфейсу Concrete5 CMS
Теперь откройте веб-браузер и получите доступ к веб-интерфейсу Concrete5 CMS, используя URL http://concrete5.example.com. Вы будете перенаправлены на следующую страницу:

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

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

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


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

Защита Concrete5 с помощью SSL Let’s Encrypt
Далее рекомендуется защитить ваш сайт с помощью SSL Let’s Encrypt. Сначала установите клиент Certbot с помощью следующей команды:
apt-get install python3-certbot-apache -yПосле установки выполните следующую команду, чтобы защитить ваш сайт с помощью SSL Let’s Encrypt:
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): [email protected]
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
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, чтобы установить SSL Let’s Encrypt для вашего сайта:
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 и SSL Let’s Encrypt на Ubuntu 20.04. Теперь вы можете легко публиковать свой контент в интернете, используя Concrete5 CMS. Не стесняйтесь задавать мне вопросы, если у вас есть какие-либо.
Get new posts in your inbox
No spam. Unsubscribe anytime.