GNU/Linux >> Linux の 問題 >  >> Cent OS

CentOS7にNextCloud14をインストールする方法

Nextcloudは、最も人気のある無料のオープンソースのセルフホストファイル同期および共有アプリケーションの1つです。個人のファイル、連絡先、写真、音楽などを保存するために使用でき、いつでもそれらにアクセスしたり、友達と共有したりできます。これは、ownCloudと呼ばれる別の広く使用されているファイルホスティングアプリケーションの人気のある代替手段です。このチュートリアルでは、CentOSにNextcloudの最新バージョン14をインストールする方法を紹介します。

前提条件
  • CentOS 7
  • root権限でのSSHアクセス
  • PHP7以降

ステップ1:SSH経由でサーバーにログインします:

# ssh root@IP_Address -p Port_number

開始する前に、以下のコマンドを入力して、マシンに適切なバージョンのCentOSがインストールされているかどうかを確認してください。

# cat /etc/redhat-release

これにより、下の出力が得られるはずです:

CentOS Linuxリリース7.5.1804(コア)

ステップ2:システムを更新する

サーバーが完全に最新であることを確認してください:

# yum update

システムがしばらく更新されていない場合は、完了するまでに数分かかります。

# yum install -y epel-release

ステップ3:Webサーバーをインストールする

このステップでは、ApacheとNginxのどちらをインストールするかを選択できます。

NginxWebサーバーをインストールします

# yum install nginx

Nginxが起動時に開始し、次を使用してサービスを開始できるようにします:

# systemctl enable nginx

# systemctl start nginx

ApacheWebサーバーをインストールします

Nginxの代わりにApacheを選択したい場合は、上記のNginxのインストールをスキップして、Apacheをインストールできます。

# yum install httpd

Apacheが起動時に開始し、以下を使用してサービスを開始できるようにします。

# systemctl enable httpd

# systemctl start httpd

ステップ4:PHP7をインストールする

CentOS7のデフォルトのPHPバージョンはPHP5.4であり、Nextcloud14にはPHP7以降が必要です。このステップでは、PHPバージョン7をインストールします。

RemiおよびEPELリポジトリパッケージをインストールします:

# rpm -Uvh http://rpms.remirepo.net/enterprise/remi-release-7.rpm

Remi PHP 7リポジトリを有効にする:

# yum-config-manager –enable remi-php70

次のコマンドを実行して、PHP7とNextcloudに必要ないくつかのPHPモジュールをインストールします。

# yum install php php-mysql php-pecl-zip php-xml php-mbstring php-gd php-fpm php-intl

それでは、/ etc / php-fpm.d / www.conf

で次の文字列を見つけましょう。
user = apache
group = apache

値を

に置き換えます
user = nginx
group = nginx

次に、PHPセッションディレクトリの権限を変更します。Nginxの代わりにApacheを使用する場合は、この手順をスキップする必要があります。

# chown -R root:nginx /var/lib/php/session/

最後に、php-fpmを再起動します

# systemctl restart php-fpm

ステップ5:MariaDBデータベースサーバーをインストールする

# nano /etc/yum.repos.d/MariaDB.repo
[mariadb]
name = MariaDB
baseurl = http://yum.mariadb.org/10.2/centos7-amd64
gpgkey=https://yum.mariadb.org/RPM-GPG-KEY-MariaDB
gpgcheck=1
# yum install MariaDB-server MariaDB-client
# systemctl start mariadb
# systemctl enable mariadb
# systemctl status mariadb

この時点で、MariaDBが実行されており、rootユーザーのパスワードを作成します。次のコマンドを実行して、rootパスワードを作成し、テストデータベースを削除し、匿名ユーザーを削除してから、権限を再読み込みします。

# mysql_secure_installation

作成したら、次のコマンドを呼び出してパスワードをテストできます。パスワードの入力を求められます:

# mysql -u root -p

ステップ6:データベースを作成する

# mysql -uroot -p -e "CREATE DATABASE nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci"
# mysql -uroot -p -e "GRANT ALL on nextcloud.* to nextcloud@localhost identified by 'M0d1fyth15'"
# mysql -uroot -p -e "FLUSH privileges"

ステップ7:Webサーバーを構成する

前の手順で、インストールするWebサーバーを選択しましたが、今度はそれを構成する必要があります。

Nginx構成

Nginxを使用する場合は、Nginxサーバーブロックの構成ファイルを作成してください

nano /etc/nginx/conf.d/yourdomain.com.conf
upstream php {
server 127.0.0.1:9000;
}

server {
server_name yourdomain.com;

add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection “1; mode=block”;
add_header X-Robots-Tag none;
add_header X-Download-Options noopen;
add_header X-Permitted-Cross-Domain-Policies none;

# Path to the root of your installation
root /var/www/nextcloud/;

location = /robots.txt {
allow all;
log_not_found off;
access_log off;
}

location = /.well-known/carddav {
return 301 $scheme://$host/remote.php/dav;
}

location = /.well-known/caldav {
return 301 $scheme://$host/remote.php/dav;
}

# set max upload size
client_max_body_size 512M;
fastcgi_buffers 64 4K;

# Enable gzip but do not remove ETag headers
gzip on;
gzip_vary on;
gzip_comp_level 4;
gzip_min_length 256;
gzip_proxied expired no-cache no-store private no_last_modified no_etag auth;
gzip_types application/atom+xml application/javascript application/json application/ld+json application/manifest+json application/rss+xml application/vnd.geo+json application/vnd.ms-fontobject application/x-font-ttf application/x-web-app-manifest+json application/xhtml+xml application/xml font/opentype image/bmp image/svg+xml image/x-icon text/cache-manifest text/css text/plain text/vcard text/vnd.rim.location.xloc text/vtt text/x-component text/x-cross-domain-policy;

location / {
rewrite ^ /index.php$request_uri;
}

location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)/ {
deny all;
}
location ~ ^/(?:\.|autotest|occ|issue|indie|db_|console) {
deny all;
}

location ~ ^/(?:index|remote|public|cron|core/ajax/update|status|ocs/v[12]|updater/.+|ocs-provider/.+)\.php(?:$|/) {
fastcgi_split_path_info ^(.+?\.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param HTTPS on;
#Avoid sending the security headers twice
fastcgi_param modHeadersAvailable true;
fastcgi_param front_controller_active true;
fastcgi_pass php;

fastcgi_intercept_errors on;
fastcgi_request_buffering off;
}

location ~ ^/(?:updater|ocs-provider)(?:$|/) {
try_files $uri/ =404;
index index.php;
}

# Adding the cache control header for js and css files
# Make sure it is BELOW the PHP block
location ~ \.(?:css|js|woff|svg|gif)$ {
try_files $uri /index.php$request_uri;
add_header Cache-Control “public, max-age=15778463”;

add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection “1; mode=block”;
add_header X-Robots-Tag none;
add_header X-Download-Options noopen;
add_header X-Permitted-Cross-Domain-Policies none;
# Optional: Don’t log access to assets
access_log off;
}

location ~ \.(?:png|html|ttf|ico|jpg|jpeg)$ {
try_files $uri /index.php$request_uri;
# Optional: Don’t log access to other assets
access_log off;
}
}

Nginx構成ファイルをテストしてから、サービスを再起動します

nginx -t
systemctl restart nginx
Apache構成

Nextcloudのホストに使用するドメインの仮想ホスト構成ファイルを作成します。

nano /etc/httpd/conf.d/yourdomain.com.conf
<VirtualHost *:80>

ServerAdmin [email protected]
DocumentRoot /var/www/nextcloud
ServerName yourdomain.com
ServerAlias www.yourdomain.com

<Directory /var/www/html/nextcloud>
Options +FollowSymlinks
AllowOverride All

<IfModule mod_dav.c>
Dav off
</IfModule>

SetEnv HOME /var/www/nextcloud
SetEnv HTTP_HOME /var/www/nextcloud
</Directory>

ErrorLog /var/log/httpd/nextcloud-error_log
CustomLog /var/log/httpd/nextcloud-access_log common

</VirtualHost>

Nextcloudの公式ウェブサイトにアクセスして、アプリケーションの最新の安定したリリースをダウンロードしてください

wget https://download.nextcloud.com/server/releases/nextcloud-14.0.0.zip

ダウンロードしたzipアーカイブをサーバーのドキュメントルートディレクトリに解凍します

# unzip nextcloud-14.0.0.zip -d /var/www/
# mkdir /var/www/nextcloud/data
# chown -R nginx: /var/www/nextcloud

If you chose Apache, then you need to set the permission for Apache user
# chown -R apache: /var/www/nextcloud

You can now proceed with Nextcloud 14 installation via web installer at http://yourdomain.com, fill the blank as required, then click on the “Finish setup” button to finish it.

Nextcloud14をHTTPSモードで実行することをお勧めします。このためにSSL証明書をインストールする必要があります。このステップでは、LetsencryptからSSL証明書をインストールする方法を示します。

# yum install certbot-nginx certbot-apache
# certbot

メールアドレスの入力を求められたら、証明書のインストールを続行するためにToSに同意する必要があります。

証明書のリクエスト時に問題がない場合、Certbotは既存のNginxサーバーブロックを自動的に編集して証明書をインストールします。

この時点で、https://yourdomain.com

でNextcloud14のインストールにアクセスできます。

これで、このチュートリアルの最後のステップで、CentOs7にNextcloud14が正常にインストールされ、管理者ユーザーのログイン資格情報を使用してログインできるようになりました。詳細については、Nextcloud14の公式ドキュメントをご覧ください。

RoseHostingは、Nextcloud.comで推奨されるNextcloudホスティングプロバイダーとしてリストされています。フルマネージドのNextcloudVPSホスティングをお試しになりたい場合は、クーポンコード 50FIRST を使用してください 最初の月の請求書が50%オフになります。 7日間の返金保証があります。クライアントの1人である場合、CentOS7にNextcloud14をインストールする必要はありません。システム管理者に、CentOSまたはその他のLinuxOSにNextcloudインスタンスをインストールして構成するように依頼するだけです。 24時間年中無休でご利用いただけます。リクエストはすぐに処理されます。

PS 。この投稿が気に入った場合は、CentOS7にNextcloud14をインストールする方法について、左側のボタンを使用してソーシャルネットワーク上の友達と共有するか、下に返信を残してください。ありがとう。


Cent OS
  1. CentOS 7 /RHEL7にNextcloudをインストールする方法

  2. CentOS 8 /RHEL8にNextcloudをインストールする方法

  3. CentOS7にNextcloud11をインストールする方法

  1. CentOS7にPHP7、7.2、7.3をインストールする方法

  2. CentOS7にJava11および12をインストールする方法

  3. CentOS7にWine4.0をインストールする方法

  1. CentOS7にVim8.2をインストールする方法

  2. CentOS7にVirtualBoxをインストールする方法

  3. CentOS8にGitをインストールする方法