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
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をインストールする方法について、左側のボタンを使用してソーシャルネットワーク上の友達と共有するか、下に返信を残してください。ありがとう。