CentOS 7にNeos CMSをインストールする方法

Neosは革新的なオープンソースのコンテンツ管理システムであり、オンラインコンテンツの作成と編集に最適です。著者と編集者を念頭に置いて、Neosは直感的な編集インターフェース、構造化コンテンツリポジトリ、多言語コンテンツの準備、プロフェッショナルコンテンツワークフロー、およびコンテンツの作成と管理を容易にするより強力な機能を提供します。

前提条件

ステップ1:最新のLAMPスタックをセットアップする

Neos 3.2.0に基づくコンテンツサイトをデプロイする場合、サイトを稼働させる前に、最新のLAMPスタックをセットアップする必要があります。たとえば、Neos 3.2.0の認定されたLAMPスタックは現在、次のもので構成されます。

  • CentOS 7 x64、最新の安定したステータスに更新、
  • Apache 2.4、
  • MariaDB 10.2。utf8_unicode_ciデフォルトで照合順序を使用します。
  • PHP 7.1、または少なくともPHP 7.0。

LAMPスタックのセットアップに役立つVultrドキュメントは多数ありますが、以下は参考のためのコマンドライン履歴の例です。Neosの特定の設定変更も含まれることに注意してください。

# Install and configure Apache 2.4.x
sudo yum install httpd -y
sudo sed -i 's/^/#&/g' /etc/httpd/conf.d/welcome.conf
sudo sed -i "s/Options Indexes FollowSymLinks/Options FollowSymLinks/" /etc/httpd/conf/httpd.conf
sudo systemctl start httpd.service
sudo systemctl enable httpd.service

# Install MariaDB 10.2.x
curl -sS https://downloads.mariadb.com/MariaDB/mariadb_repo_setup | sudo bash
sudo yum install MariaDB-server MariaDB-client -y
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

# Secure MariaDB 10.2.x
sudo /usr/bin/mysql_secure_installation
# When prompted, answer questions as below:
# - Enter current password for root (enter for none): Just press the Enter button
# - Set root password? [Y/n]: Y
# - New password: your-MariaDB-root-password
# - Re-enter new password: your-MariaDB-root-password
# - 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

# Set the default collation of MariaDB as utf8_unicode_ci
cat <<EOF>> /tmp/collation.conf
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
collation-server=utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server=utf8
EOF
sudo cp /etc/my.cnf /etc/my.cnf.bak
sudo sed -i '/\[client-server\]/r /tmp/collation.conf' /etc/my.cnf
sudo systemctl restart mariadb.service

# Create a MariaDB database for Neos
mysql -u root -p
# For security purposes, be sure to replace "neos", "neosuser", and "yourpassword" with your own ones. 
CREATE DATABASE neos;
CREATE USER 'neosuser'@'localhost' IDENTIFIED BY 'yourpassword';
GRANT ALL PRIVILEGES ON neos.* TO 'neosuser'@'localhost' IDENTIFIED BY 'yourpassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
EXIT;

# Install required PHP 7.1.x packages and configure PHP for Neos
sudo rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
sudo yum install -y php71w php71w-mysqlnd php71w-common php71w-cli php71w-xml php71w-mbstring php71w-pecl-imagick php71w-mcrypt php71w-opcache php71w-imap php71w-process php71w-intl
sudo cp /etc/php.ini /etc/php.ini.bak
sudo sed -i 's#;date.timezone =#date.timezone = America/Los_Angeles#' /etc/php.ini
sudo sed -i "s/memory_limit = 128M/memory_limit = 250M/" /etc/php.ini
sudo sed -i '$a\xdebug.max_nesting_level = 500' /etc/php.ini

ステップ2:Composerをダウンロードしてインストールする

NeosにはComposer PHP依存関係マネージャーが必要です。次のコマンドを使用して、Composer 1.5.2をマシンにインストールできます。

注:将来的には、公式のダウンロードページからComposerの最新の安定版リリースをいつでも入手できます

cd
php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php -r "if (hash_file('SHA384', 'composer-setup.php') === '544e09ee996cdf60ece3804abc52599c22b1f40f4323403c44d44fdfdd586475ca9813a858088ffbc1f233e9b180f061') { echo 'Installer verified'; } else { echo 'Installer corrupt'; unlink('composer-setup.php'); } echo PHP_EOL;"
php composer-setup.php
php -r "unlink('composer-setup.php');"
sudo mv composer.phar /usr/local/bin/composer

ステップ3:Composerを使用してNeosをインストールする

Composerを利用して、Neosと必要なすべての依存関係を指定された場所にインストールできます。

cd
mkdir neos
cd neos
composer create-project --no-dev neos/neos-base-distribution .

管理目的で、すべてのNeosファイルを/optディレクトリに移動し、Webルートディレクトリ/var/www/htmlからディレクトリへのシンボリックリンクを作成して、/opt/neosすべてのNeosファイルをApacheで使用できるようにします。

sudo mv ~/neos /opt
sudo chown -R apache:apache /opt/neos
sudo ln -s /opt/neos /var/www/html/neos

/var/www/html/neos/WebWebルートディレクトリとして指定するNeosサイトのApache仮想ホストをセットアップします。

注:独自のマシンにデプロイする場合は、example以下のすべての値を独自の値に置き換えてください。

cat <<EOF | sudo tee /etc/httpd/conf.d/neos.conf
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/html/neos/Web
ServerName example.com
ServerAlias neos.example.com
<Directory /var/www/html/neos/Web>
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/httpd/example.com-error_log
CustomLog /var/log/httpd/example.com-access_log common
</VirtualHost>
EOF

Apacheを再起動して、すべてのアップデートを適用します。

sudo systemctl restart httpd.service

ステップ4:ファイアウォールルールを変更する

訪問者がNeosサイトにアクセスできるようにするには、ファイアウォールルールを次のように変更する必要があります。

sudo firewall-cmd --zone=public --permanent --add-service=http
sudo firewall-cmd --zone=public --permanent --add-service=https
sudo firewall-cmd --reload

手順5:Webインストールウィザードからインストールを続行する

お気に入りのWebブラウザでをポイントするhttp://example.com/setupと、Neos Webインストールウィザードインターフェイスが表示されます。

このLoginページではLogin、セットアップインターフェイスに入る前に、セットアップパスワードを入力してボタンをクリックする必要があります。パスワードは/var/www/html/neos/Data/SetupPassword.txtファイルに保存されます。ターミナルウィンドウで次のコマンドを入力して取得できます。

cat /var/www/html/neos/Data/SetupPassword.txt

セキュリティ上の理由から、このファイルはログインに成功すると削除されます。今後の参照用にパスワードを書き留めておいてください。

このNeos requirements check - Image Manipulationページで、imagickまたはgmagickPHP拡張機能がインストールされ、選択されていることを確認してから、Next >ボタンをクリックして先に進みます。

このConfigure databaseページで、以下のようにデータベースの詳細を入力または選択します。

  • DBドライバー: MySQL/MariaDB via PDO
  • DBユーザー名: neosuser
  • DBパスワード: yourpassword
  • DBホスト: 127.0.0.1
  • DB名: neos

データベースneosutf8文字セットを使用していることを確認してNext >から、ボタンをクリックして先に進みます。

上のCreate administrator accountページ、入力、サイト管理者first namelast nameusername、およびpasswordその後(2回)、およびクリックNext >で移動するボタンを。

このCreate a new siteページでは、初心者として、Neos.Demoサイトパッケージを選択し、Next >ボタンをクリックして設定を完了できます。

注:将来的にNeosに慣れると、Neos Webインストールウィザードを再度実行してこのページで独自のサイトパッケージを作成し、新しいサイトパッケージを使用してカスタムNeosサイトを構築できます。

これで、Neosサイトのフロントエンドページにアクセスしたり、Neosサイトのバックエンドページでサイトを管理したりできます。参考までに、役立つリンクを以下に示します。

  • サイトフロントエンドページ: http://example.com
  • サイトバックエンドページ: http://example.com/neos
  • サイト設定ページ: http://example.com/setup

ステップ6:インストール後の手順

Neosサイトを本番環境にデプロイする場合は、次のように行をApache仮想ホスト構成に挿入して、フローアプリケーションコンテキストをDevelopment(デフォルト値)からに変更する必要もあります。ProductionSetEnv FLOW_CONTEXT Production

cat <<EOF | sudo tee /etc/httpd/conf.d/neos.conf
<VirtualHost *:80>
ServerAdmin [email protected]
DocumentRoot /var/www/html/neos/Web
SetEnv FLOW_CONTEXT Production
ServerName example.com
ServerAlias neos.example.com
<Directory /var/www/html/neos/Web>
Options FollowSymLinks
AllowOverride All
Order allow,deny
allow from all
</Directory>
ErrorLog /var/log/httpd/example.com-error_log
CustomLog /var/log/httpd/example.com-access_log common
</VirtualHost>
EOF

Apacheを再起動して変更を適用します。

sudo systemctl restart httpd.service

Neos.demoパブリックでサイトパッケージを使用してサイトを作成する場合Create accountは、Try meページ上のボタンを削除して、不正アクセスを防止してください。

ステップ7(オプション):HTTPSLet's Encrypt証明書をデプロイして有効化する

Neosサイトのセキュリティを強化するために、HTTPSLet's Encrypt証明書をデプロイすることにより、サイトで有効にすることができます。

まず、viテキストエディタを使用して、サーバーインスタンスにFQDN(完全修飾ドメイン名)を設定します。

sudo vi /etc/hosts

既存の行の前に次の行を挿入します。

203.0.113.1 neos.example.com neos

保存して終了します。

:wq!

hostname -fコマンドを使用して、次のような結果を確認します。

neos.example.com

Let's Encrypt証明書を自動的に展開して有効にすることができるCertbotユーティリティをインストールしますHTTPS

sudo yum install -y yum-utils
sudo yum-config-manager --enable rhui-REGION-rhel-server-extras rhui-REGION-rhel-server-optional
sudo yum install -y certbot-apache

次に、Certbotユーティリティを使用して、サーバーインスタンスで実行されているApache WebサーバーのLet's Encrypt証明書をデプロイします。

sudo cp /etc/httpd/conf.d/neos.conf /etc/httpd/conf.d/neos.conf.bak
sudo certbot --apache

プロセス中に、以下に示すように、質問に答えます。

Enter email address (used for urgent renewal and security notices): `[email protected]`
Agree Letsencrypt terms of service (A)gree/(Cancel): `A`
Would you be willing to share your email address (Y)es/(N)o: `Y`
Which names would you like to activate HTTPS for? 1: example.com 2:neos.example.com: `1,2`
Whether or not to redirect HTTP traffic to HTTPS, removing HTTP access? 1: No redirect/2: Redirect `2`

すべてのHTTP接続がにリダイレクトされHTTPSます。

以下のようにcronジョブを作成して、マシンのLet's Encrypt証明書を1日に2回更新してみます。

sudo crontab -e

I」を押して挿入モードに入り、次の行を入力します。

0 1,13 * * * /usr/bin/certbot renew

保存して終了します。

:wq!

これでチュートリアルは終了です。読んでくれてありがとう。



Leave a Comment

CentOS 7にApacheをインストールする方法

CentOS 7にApacheをインストールする方法

CentOS 7サーバーにApache 2.4をインストールする方法を説明します。安定したウェブサーバーを構築するための前提条件と手順を解説します。

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1にBlacklistdをインストールする方法

FreeBSD 11.1におけるBlacklistdのインストール方法について詳しく解説します。この方法を通じて、強力なセキュリティ対策を実装できます。

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

Windows Serverのサーバーマネージャーを使用した複数サーバーの管理

サーバーマネージャーを使用して、Windows Serverの管理が向上します。セキュリティリスクを軽減し、効率的な管理を実現します。

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法

CentOS 7にSeafileサーバーをインストールする方法。Seafile(コミュニティバージョン)は、ownCloudに似た無料のオープンソースファイル同期および共有ソリューションです。

DebianでSnortを設定する方法

DebianでSnortを設定する方法

Snortは無料のネットワーク侵入検知システムです。最新の方法で、SnortをDebianにインストールし、設定する手順を紹介します。ネットワークのセキュリティを強化しましょう。

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールする方法

CentOS 7にGraylogサーバーをインストールし、ログ管理を行う方法を学びます。

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsでhMailServerを使用してメールサーバーを構築する

WindowsサーバーでWebサイトを実行している場合、電子メールも受信できるようにするためにhMailServerを使用する方法を解説します。

Ubuntu 19.04にFiveMサーバーをインストールする方法

Ubuntu 19.04にFiveMサーバーをインストールする方法

FiveMサーバーをUbuntu 19.04にインストールするための詳細なガイド。必要条件からインストール、起動、トラブルシューティングまで、すべてのステップを含みます。

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

WsgiDAVを使用してDebian 10にWebDAVをデプロイする

Debian 10にWebDAVをデプロイする方法を学び、WsgiDAVとSSL証明書で安全な接続を実現しましょう。

ヘルスケア2021における人工知能の影響

ヘルスケア2021における人工知能の影響

ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。