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

Как установить Neos CMS на Ubuntu 22.04


Это руководство существует для этих версий ОС

  • Ubuntu 22.04 (Jammy Jellyfish)
  • Ubuntu 18.04 (Bionic Beaver)

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

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

Neos CMS — это бесплатная инновационная система управления контентом с открытым исходным кодом, которая помогает вам управлять веб-сайтами и блогами без каких-либо знаний в области программирования. Он прост, безопасен и разработан для простоты использования, что помогает владельцам бизнеса сотрудничать с пользователями на нескольких устройствах. Он предлагает очень полезные функции, включая полную поддержку Unicode, полную интернационализацию, SEO, встроенное редактирование и многое другое. Основная идея проекта заключается в том, чтобы позволить редакторам редактировать контент как можно более плавно, сохраняя при этом его структуру.

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

Предпосылки

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

Начиная

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

apt update -y
apt upgrade -y

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

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

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

apt-get install apache2 mariadb-server php libapache2-mod-php php-common php-mysql php-gmp php-curl php-intl php-mbstring php-xmlrpc php-gd php-bcmath php-xml php-cli php-gmagick php-zip curl unzip git -y

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

nano /etc/php/8.1/apache2/php.ini

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

short_open_tag = On
memory_limit = 256M
upload_max_filesize = 150M
max_execution_time = 360
date.timezone = UTC

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

systemctl restart apache2

Создание базы данных для Neos CMS

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

mysql_secure_installation

Ответьте на все вопросы, как показано ниже:

Enter current password for root (enter for none):
Set root password? [Y/n]: N
Remove anonymous users? [Y/n]: Y
Disallow root login remotely? [Y/n]: Y
Remove test database and access to it? [Y/n]:  Y
Reload privilege tables now? [Y/n]:  Y

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

mysql -u root -p

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

MariaDB [(none)]> CREATE DATABASE neosdb;
MariaDB [(none)]> CREATE USER 'neos'@'localhost' IDENTIFIED BY 'mypassword';

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

MariaDB [(none)]> GRANT ALL PRIVILEGES ON neosdb.* TO 'neos'@'localhost' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

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

MariaDB [(none)]> ALTER DATABASE neosdb charset=utf8mb4;
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

Затем отредактируйте файл конфигурации MariaDB и внесите некоторые изменения:

nano /etc/mysql/mariadb.conf.d/50-server.cnf

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

innodb_file_format = Barracuda
innodb_large_prefix = 1
innodb_file_per_table = 1
innodb_default_row_format = dynamic

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

systemctl restart mariadb

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

Установить CMS Неос.

Прежде чем начать, вам нужно будет установить Composer в вашу систему. Composer — это менеджер зависимостей, используемый для установки зависимостей PHP.

Выполните следующую команду, чтобы установить Composer:

curl -sS https://getcomposer.org/installer | php

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

All settings correct for using Composer
Downloading...

Composer (version 2.4.1) successfully installed to: /root/composer.phar
Use it: php composer.phar

Затем переместите файл Composer в системную папку:

mv composer.phar /usr/local/bin/composer

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

cd /var/www/html/
git clone https://github.com/neos/neos-base-distribution.git

Затем переименуйте загруженный каталог и запустите команду composer, чтобы установить все зависимости PHP:

mv neos-base-distribution neoscms
cd neoscms
composer install

Затем установите правильное разрешение и право собственности на каталог Neos:

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

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

Настройка Apache для CMS Neos

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

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

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

<VirtualHost *:80>
     ServerAdmin 
     DocumentRoot /var/www/html/neoscms/Web
     ServerName neos.example.com
     <Directory /var/www/html/neoscms/Web/>
          Options FollowSymlinks
          AllowOverride All
          Require all granted
     </Directory>

     ErrorLog ${APACHE_LOG_DIR}/neos_error.log
     CustomLog ${APACHE_LOG_DIR}/neos_access.log combined
    
     <Directory /var/www/html/neoscms/Web/>
            RewriteEngine on
            RewriteBase /
            RewriteCond %{REQUEST_FILENAME} !-f
            RewriteRule ^(.*) index.php [PT,L]
    </Directory>
</VirtualHost>

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

a2ensite neoscms.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 Sun 2022-09-04 08:07:38 UTC; 8s ago
       Docs: https://httpd.apache.org/docs/2.4/
    Process: 22571 ExecStart=/usr/sbin/apachectl start (code=exited, status=0/SUCCESS)
   Main PID: 22577 (apache2)
      Tasks: 6 (limit: 4579)
     Memory: 14.7M
        CPU: 128ms
     CGroup: /system.slice/apache2.service
             ??22577 /usr/sbin/apache2 -k start
             ??22578 /usr/sbin/apache2 -k start
             ??22579 /usr/sbin/apache2 -k start
             ??22580 /usr/sbin/apache2 -k start
             ??22581 /usr/sbin/apache2 -k start
             ??22582 /usr/sbin/apache2 -k start

Sep 04 08:07:38 ubuntu2204 systemd[1]: Starting The Apache HTTP Server...

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

Доступ к CMS Neos

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

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

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

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

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

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

Нажмите Перейти к серверной части. Вы должны увидеть страницу входа в Neos CMS:

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

Защитите Neos CMS с помощью Lets Encrypt

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

apt-get install python3-certbot-apache -y

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

certbot --apache -d neos.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 neos.example.com
Enabled Apache rewrite module
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/neos-le-ssl.conf
Enabled Apache socache_shmcb module
Enabled Apache ssl module
Deploying Certificate to VirtualHost /etc/apache2/sites-available/neos-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/neos-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/neos.conf to ssl vhost in /etc/apache2/sites-available/neos-le-ssl.conf

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

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

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

Заключение

Поздравляем! вы успешно установили Neos CMS с Apache и Lets Encrypt SSL на сервер Ubuntu 22.04. Теперь вы можете легко создавать и редактировать свой веб-сайт через веб-браузер. Не стесняйтесь спрашивать меня, если у вас есть какие-либо вопросы.