Как установить Anchor CMS на CentOS 7 LAMP VPS
Используете другую систему? Anchor CMS - это сверхпростая и чрезвычайно легкая бесплатная система управления контентом (CMS) с открытым исходным кодом.
DotCMS - это система управления контентом корпоративного уровня с открытым исходным кодом, написанная на Java. Он содержит почти все функции, необходимые для создания веб-сайта для вашего бизнеса. Он предоставляет RESTful API для интеграции с другими сервисами, такими как CRM, мобильные приложения и многое другое. Он использует Elasticsearch для индексации контента в реальном времени и Redis для реализации многоуровневого кэша.
В этом руководстве мы будем использовать 192.168.0.1
в качестве общедоступного IP-адреса и в cms.example.com
качестве имени домена, указывающего на экземпляр Vultr. Обязательно замените все вхождения примера доменного имени и общедоступного IP-адреса фактическим.
Обновите свою базовую систему, используя руководство Как обновить Ubuntu 16.04 . После обновления системы перейдите к установке Java.
Добавьте репозиторий Ubuntu для Oracle Java 8.
sudo add-apt-repository --yes ppa:webupd8team/java
sudo apt update
Установите Java.
sudo apt -y install oracle-java8-installer
Вы сможете проверить версию Java.
java -version
Вы увидите следующий вывод.
user@vultr:~$ java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)
Установите путь по умолчанию для Java, установив следующий пакет.
sudo apt -y install oracle-java8-set-default
Вы можете проверить, что JAVA_HOME
установлено.
echo $JAVA_HOME
Вы должны увидеть следующее.
user@vultr:~$ echo $JAVA_HOME
/usr/lib/jvm/java-8-oracle
Если вы не видите никакого вывода, вам нужно будет выйти из текущей оболочки и снова войти в систему.
По умолчанию dotCMS настроен на использование ядра базы данных H2. Ядро базы данных H2 - это ядро базы данных на основе простых файлов Не рекомендуется использовать в производстве. В этом руководстве мы будем использовать сервер PostgreSQL для хранения базы данных dotCMS.
PostgreSQL - это объектно-реляционная система баз данных, известная своей стабильностью и скоростью. Репозиторий Ubuntu по умолчанию содержит старую версию PostgreSQL, поэтому добавьте репозиторий PostgreSQL.
echo "deb http://apt.postgresql.org/pub/repos/apt/ xenial-pgdg main" | sudo tee /etc/apt/sources.list.d/pgdg.list
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
sudo apt update
Установите сервер базы данных PostgreSQL.
sudo apt -y install postgresql
Запустите сервер PostgreSQL и включите его автоматический запуск во время загрузки.
sudo systemctl start postgresql
sudo systemctl enable postgresql
Измените пароль для пользователя PostgreSQL по умолчанию.
sudo passwd postgres
Войдите в систему как пользователь PostgreSQL.
sudo su - postgres
Создайте нового пользователя PostgreSQL для dotCMS.
createuser dotcms
PostgreSQL предоставляет psql
оболочку для выполнения запросов на сервере базы данных. Переключитесь на оболочку PostgreSQL.
psql
Установите пароль для вновь созданного пользователя для базы данных dotCMS.
ALTER USER dotcms WITH ENCRYPTED password 'DBPassword';
Замените пароль пользователя базы данных DBPassword
надежным паролем.
Создайте новую базу данных для установки dotCMS.
CREATE DATABASE dotcms OWNER dotcms;
Выход из psql
оболочки.
\q
Переключиться на sudo
пользователя.
exit
Загрузите архив dotCMS.
wget https://dotcms.com/physical_downloads/release_builds/dotcms_4.3.2.tar.gz
Вы всегда можете найти ссылку на последнюю версию приложения на странице загрузки dotCMS .
Создайте новый каталог для хранения файлов dotCMS и извлеките их в него.
sudo mkdir /opt/dotcms
sudo tar -zxf dotcms*.tar.gz -C /opt/dotcms
Откройте файл конфигурации базы данных.
cd /opt/dotcms
sudo nano dotserver/tomcat-*/webapps/ROOT/META-INF/context.xml
Найдите H2
блок.
<!-- H2 -->
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
Закомментируйте весь H2
раздел, переместив разделитель комментариев -->
из начала раздела в конец раздела. Это должно выглядеть следующим образом.
<!-- H2
<Resource name="jdbc/dotCMSPool" auth="Container"
...
validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
-->
Раскомментируйте раздел PostgreSQL, удалив разделитель комментариев -->
в конце раздела и поместив его в верхнюю обертку POSTGRESQL
. Также найдите username=
и password=
замените существующие значения именем пользователя и паролем пользователя базы данных PostgreSQL. Если вы использовали имя базы данных, отличное от dotcms
, то вам нужно будет изменить имя базы данных в url=
. После настройки блок PostgreSQL в файле будет выглядеть следующим образом.
<!-- POSTGRESQL -->
<Resource name="jdbc/dotCMSPool" auth="Container"
type="javax.sql.DataSource"
factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"
driverClassName="org.postgresql.Driver"
url="jdbc:postgresql://localhost/dotcms"
username="dotcms" password="DBPassword" maxTotal="60" maxIdle="10" maxWaitMillis="60000"
removeAbandonedOnBorrow="true" removeAbandonedOnMaintenance="true" removeAbandonedTimeout="60" logAbandoned="true"
timeBetweenEvictionRunsMillis="30000" validationQuery="SELECT 1" testOnBorrow="true" testWhileIdle="true" />
Предоставьте разрешение на выполнение для всех исполняемых файлов.
sudo chmod 755 ./bin/*.sh
sudo chmod 755 dotserver/tomcat-*/bin/*.sh
DotCMS теперь установлен на вашем сервере. Чтобы немедленно запустить приложение, выполните следующее.
cd /opt/dotcms
sudo bin/startup.sh
После успешного запуска сервера вы увидите следующий вывод.
user@vultr:/opt/dotcms$ sudo bin/startup.sh
Using DOTCMS_HOME = /opt/dotcms/dotserver/tomcat-8.0.18/webapps/ROOT
Using DOTSERVER = dotcms
Using CATALINA_PID = /tmp/dotcms.pid
Using JAVA_OPTS = -Djava.awt.headless=true -Xverify:none -Dfile.encoding=UTF8 -server -XX:+DisableExplicitGC -XX:MaxMetaspaceSize=512m -Xmx1G -XX:+UseG1GC -javaagent:/opt/dotcms/dotserver/tomcat-8.0.18/webapps/ROOT/WEB-INF/lib/byte-buddy-agent-1.6.12.jar -Ddotserver=dotcms
Using CATALINA_BASE: /opt/dotcms/dotserver/tomcat-8.0.18
Using CATALINA_HOME: /opt/dotcms/dotserver/tomcat-8.0.18
Using CATALINA_TMPDIR: /opt/dotcms/dotserver/tomcat-8.0.18/temp
Using JRE_HOME: /usr
Using CLASSPATH: /opt/dotcms/dotserver/tomcat-8.0.18/bin/bootstrap.jar:/opt/dotcms/dotserver/tomcat-8.0.18/bin/tomcat-juli.jar
Using CATALINA_PID: /tmp/dotcms.pid
Tomcat started.
Приведенная выше команда запустит веб-сервер Tomcat для обслуживания приложения через порт 8080
.
Откройте ваш любимый браузер и перейдите к http://192.168.0.1:8080
. Вы увидите, что приложение работает на демо-сайте. Если вы не видите свой веб-сайт, подождите, пока первый запуск сервера dotCMS займет пять-десять минут, поскольку он записывает данные в базу данных PostgreSQL и создает кэш. Вы также можете проверить журналы запуска.
tail -n 1000 -f /opt/dotcms/dotserver/tomcat-*/webapps/ROOT/dotsecure/logs/dotcms.log
Сервер dotCMS может быть запущен напрямую с помощью сценария запуска, предоставленного в пакете установщика. Для удобства вам следует настроить файл модуля Systemd для сервера dotCMS. Это обеспечит автоматический запуск сервера приложений при перезапуске системы и сбоях.
Остановите работающий сервер dotCMS, используя скрипт завершения работы.
sudo bin/shutdown.sh
В целях безопасности создайте непривилегированного пользователя для запуска сервера dotCMS.
sudo adduser --home /opt/dotcms -gecos "dotCMS User" --disabled-password --disabled-login dotcms
Предоставьте право собственности на файлы пользователю dotCMS.
sudo chown -R dotcms:dotcms /opt/dotcms
Создайте новый сервис Systemd.
sudo nano /etc/systemd/system/dotcms.service
Заполните файл.
[Unit]
Description=dotCMS service
After=syslog.target network.target
[Service]
Type=forking
ExecStart=/opt/dotcms/bin/startup.sh
ExecStop=/opt/dotcms/bin/shutdown.sh
User=dotcms
Group=dotcms
Restart=always
[Install]
WantedBy=multi-user.target
Запустите приложение и включите его для автоматического запуска во время загрузки.
sudo systemctl start dotcms
sudo systemctl enable dotcms
Убедитесь, что служба работает.
sudo systemctl status dotcms
По умолчанию сервер dotCMS прослушивает порт 8080
. Мы настроим Nginx в качестве обратного прокси, чтобы к приложению можно было обращаться через стандарт HTTP
и HTTPS
порты. Мы также настроим Nginx для использования SSL, созданного с помощью Let's Encrypt.
Установите Nginx.
sudo apt -y install nginx
Запустите Nginx и включите его автоматический запуск во время загрузки.
sudo systemctl start nginx
sudo systemctl enable nginx
Добавьте хранилище Certbot.
sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update
Установите Certbot, который является клиентским приложением для Let's Encrypt CA.
sudo apt -y install certbot
Примечание. Чтобы получить сертификаты от Let's Encrypt CA, домен, для которого должны быть созданы сертификаты, должен быть направлен на сервер. Если нет, внесите необходимые изменения в записи DNS домена и дождитесь распространения DNS, прежде чем снова делать запрос сертификата. Certbot проверяет полномочия домена перед предоставлением сертификатов.
Создайте сертификаты SSL.
sudo certbot certonly --webroot -w /var/www/html -d cms.example.com
Сгенерированные сертификаты, вероятно, будут храниться в /etc/letsencrypt/live/cms.example.com/
. Срок действия сертификатов Let's Encrypt истекает через 90 дней, поэтому рекомендуется настроить автоматическое обновление сертификатов с помощью заданий Cron.
Откройте файл задания cron.
sudo crontab -e
Добавьте следующую строку в конец файла.
30 5 * * * /usr/bin/certbot renew --quiet
Вышеуказанная работа cron будет выполняться каждый день в 5:30. Если срок действия сертификата истекает, он будет автоматически продлен.
Создайте новый файл блока сервера для сайта dotCMS.
sudo nano /etc/nginx/sites-available/dotcms
Заполните файл.
server {
listen 80;
server_name cms.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name cms.example.com;
ssl_certificate /etc/letsencrypt/live/cms.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/cms.example.com/privkey.pem;
ssl on;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
access_log /var/log/nginx/dotcms.access.log;
location / {
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_pass http://localhost:8080;
proxy_read_timeout 90;
proxy_redirect http://localhost:8080 https://cms.example.com;
}
}
Активируйте конфигурацию.
sudo ln -s /etc/nginx/sites-available/dotcms /etc/nginx/sites-enabled/dotcms
Перезапустите веб-сервер Nginx, чтобы изменения вступили в силу.
sudo systemctl restart nginx
Приложение dotCMS теперь установлено на вашем сервере для производственного использования. Получите доступ к административной панели по следующему адресу.
https://cms.example.com/dotAdmin
Войдите в систему, используя начальную учетную запись администратора [email protected]
и пароль admin
. Измените пароль по умолчанию сразу после входа в систему.
Поздравляем, система управления контентом dotCMS установлена на вашем сервере. Вы можете изменить демонстрационный сайт или начать создавать свой сайт с нуля.
Используете другую систему? Anchor CMS - это сверхпростая и чрезвычайно легкая бесплатная система управления контентом (CMS) с открытым исходным кодом.
Используете другую систему? TextPattern CMS 4.6.2 - это простая, гибкая, бесплатная система управления контентом (CMS) с открытым исходным кодом, которая позволяет веб-дизайнерам
Используете другую систему? Backdrop CMS 1.8.0 - это простая и гибкая, удобная для мобильных устройств, бесплатная система с открытым исходным кодом (CMS), которая позволяет нам
Используете другую систему? Subrion 4.1 CMS - это мощная и гибкая система управления контентом с открытым исходным кодом (CMS), которая обеспечивает интуитивно понятный и понятный контент.
Bolt - это CMS с открытым исходным кодом, написанная на PHP. Исходный код Bolts размещен на GitHub. Это руководство покажет вам, как установить Bolt CMS на новую CentOS 7 Vult.
Используете другую систему? PyroCMS - это CMS с открытым исходным кодом, написанная на PHP. Исходный код PyroCMS размещен на GitHub. В этом руководстве хорошо прогуляться по всему
Использ��ете другую систему? Backdrop CMS 1.8.0 - это простая и гибкая, удобная для мобильных устройств, бесплатная система с открытым исходным кодом (CMS), которая позволяет нам
Используете другую систему? Pagekit 1.0 CMS - это красивая, модульная, расширяемая и легкая, бесплатная и с открытым исходным кодом система управления контентом (CMS) с
Используете другую систему? Subrion 4.1 CMS - это мощная и гибкая система управления контентом с открытым исходным кодом (CMS), которая обеспечивает интуитивно понятный и понятный контент.
Используете другую систему? TextPattern CMS 4.6.2 - это простая, гибкая, бесплатная система управления контентом (CMS) с открытым исходным кодом, которая позволяет веб-дизайнерам
Используете другую систему? Октябрь 1.0 CMS - это простая и надежная, бесплатная система управления контентом (CMS) с открытым исходным кодом, построенная на платформе Laravel.
Используете другую систему? Subrion 4.1 CMS - это мощная и гибкая система управления контентом с открытым исходным кодом (CMS), которая обеспечивает интуитивно понятный и понятный контент.
Используете другую систему? Automad - это система управления контентом на основе файлов с открытым исходным кодом (CMS) и механизм шаблонов, написанный на PHP. Исходный код Automad я
Используете другую систему? WonderCMS - это быстрая и небольшая плоская файловая CMS с открытым исходным кодом, написанная на PHP. Исходный код WonderCMS размещен на Github. Это руководство будет
Используете другую систему? Введение Tiki Wiki CMS Groupware, также известная как Tiki, является бесплатной и открытой системой управления контентом вики. Особенность Тикиса
Используете другую систему? Введение BoltWire - это бесплатная и легкая система управления контентом, написанная на PHP. По сравнению с большинством других контент-менеджеров
ApostropheCMS - это современная система управления контентом, построенная на NodeJS с акцентом на расширяемые инструменты контекстного редактирования. В этом уроке вы узнаете
Используете другую систему? BigTree CMS 4.2 - это быстрая и легкая бесплатная система управления контентом (CMS) корпоративного уровня с открытым исходным кодом и широким
Используете другую систему? Microweber - это CMS с открытым исходным кодом и онлайн-магазин. Исходный код микропровода размещен на GitHub. Это руководство покажет вам
Изучение 26 методов анализа больших данных: часть 1
Многие из вас знают Switch, который выйдет в марте 2017 года, и его новые функции. Для тех, кто не знает, мы подготовили список функций, которые делают «Switch» обязательным гаджетом.
Вы ждете, когда технологические гиганты выполнят свои обещания? проверить, что осталось недоставленным.
Прочтите блог, чтобы узнать о различных уровнях архитектуры больших данных и их функциях самым простым способом.
Прочтите это, чтобы узнать, как искусственный интеллект становится популярным среди небольших компаний и как он увеличивает вероятность их роста и дает преимущество перед конкурентами.
CAPTCHA стало довольно сложно решать пользователям за последние несколько лет. Сможет ли он оставаться эффективным в обнаружении спама и ботов в ближайшем будущем?
По мере того, как наука развивается быстрыми темпами, принимая на себя большую часть наших усилий, также возрастает риск подвергнуться необъяснимой сингулярности. Прочтите, что может значить для нас необычность.
Что такое телемедицина, дистанционное здравоохранение и их влияние на будущее поколение? Это хорошее место или нет в ситуации пандемии? Прочтите блог, чтобы узнать мнение!
Возможно, вы слышали, что хакеры зарабатывают много денег, но задумывались ли вы когда-нибудь о том, как они зарабатывают такие деньги? Давайте обсудим.
Недавно Apple выпустила macOS Catalina 10.15.4, дополнительное обновление для исправления проблем, но похоже, что это обновление вызывает больше проблем, приводящих к поломке компьютеров Mac. Прочтите эту статью, чтобы узнать больше