1.打开并登录 云服务器选购 页面,进入自定义配置选项卡,根据下表说明进行配置:
配置项 | 值 |
---|---|
计费模式 | 包年包月 |
地域 | 选择与您所在地最近的地域,请注意不要选择金融专区(带“金融”字样的地域) |
可用区 | 随机可用区 |
网络类型(如有) | 私有网络 |
网络 | 选择 Default-VPC 和 Default-Subnet |
实例 | 根据 服务器配置 中的说明,选择机型和规格,例如标准型 SA2/1核/4GB |
镜像 | 公共镜像,CentOS 64位,CentOS 7.7 64位(或其他7.x版均可以) |
系统盘、数据盘 | 保持默认 |
定期快照 | 建议勾选“对系统盘设置定期快照”以避免数据被误删或感染病毒等情况导致的数据异常 |
公网带宽 | 对于使用频率较低的个人和家庭用户,推荐选择按流量计费,同时为了保证峰值带宽,可以将带宽充分利用;对于使用频率较高、有一定的带宽利用率的企业用户,可以考虑使用按带宽计费,并选择合适的带宽。有关公网带宽的对比和计量计费,可进一步参考页面中的相关链接文档 |
数量 | 1 |
时长 | 根据需求进行选择,购买时长越长可享有更多折扣 |
2.单击下一步:设置主机,根据下表说明进行配置:
配置项 | 值 |
---|---|
所属项目 | 默认项目 |
安全组 | 新建安全组,放通常用 IP/端口里勾选:ICMP、TCP:22、TCP:80、放通内网 |
安全组规则 | 保持默认 |
登录方式 | 选择设置密码 |
密码、确认密码 | 设置一个足够复杂的密码并牢记 |
安全加固、云监控 | 勾选免费开通 |
自动续费 | 勾选 |
3.单击下一步:确认配置信息,展开地域和机型,记录地域和可用区,并确认全部信息无误后,勾选同意《腾讯云服务协议》和《退款规则》,单击立即购买。
说明 在商品确认页面,可以选择加购对象存储 COS 资源包和高可用版 MySQL,因为 COS 和 MySQL 均为本教程中会用到的云产品,因此强烈建议此时加购,享受更多折扣。
4.单击加购对象存储 COS 资源包,根据下表说明进行配置:
配置项 | 值 |
---|---|
资源包类型 | 标准存储容量 |
地域类型 | 根据 CVM 所属地域选择 |
规格 | 根据预估在网盘中存储的数据量进行购买,COS 资源包可以叠加,因此您可以先购买一个较小规格的资源包,当需要时再叠加购买用以抵扣更多的标准存储容量 |
有效时长 | 根据需求进行选择,如果考虑后续购买更大资源包,可以选择较短时长并及时续购 |
购买数量 | 1个。购买多个将叠加所抵扣的标准存储容量,不如直接购买较大规格的资源包折扣高 |
5.单击立即购买将 COS 资源包加入订单,然后单击加购高可用版 MySQL,根据下表说明进行配置:
配置项 | 值 |
---|---|
地域、网络 | 与 CVM 的地域和可用区保持一致 |
项目 | 保持默认 |
数据库版本 | MySQL5.7 |
规格 | 1核,1000MB内存,50GB硬盘(如果您对性能或空间有更高需求,也可以选择更高配置,或在未来有需要时随时调整配置) |
数量 | 1 |
时长 | 根据需求进行选择 |
6.单击确认加购完成 MySQL 的加购,确认订单内容无误后,单击提交订单并根据提示完成支付。
说明 如果您在购买云服务器时没有加购云数据库 MySQL,那么您需要先购买 MySQL;如果已经购买 MySQL 则可以跳过购买 MySQL 环节,直接跳转至 配置 MySQL。
1.打开并登录 云数据库 MySQL 选购 页面,根据下表说明进行配置:
配置项 | 值 |
---|---|
计费模式 | 包年包月 |
地域 | 与所购 CVM 保持一致 |
数据库版本 | MySQL5.7(请注意不要选择 CynosDB 版本) |
架构 | 高可用版 |
主可用区 | 与所购 CVM 保持一致 |
备可用区(如可选) | 与主可用区保持一致 |
实例规格 | 1核1000MB(如果您对性能更高需求,也可以选择更高配置,或在未来有需要时随时调整配置) |
硬盘 | 50GB(如果您对空间有更高需求,也可以选择更高配置,或在未来有需要时随时调整配置) |
网络 | 私有网络(如有)Default-VPC,Default-Subnet |
安全组 | default 或放通全部端口。如果列表中无相应选项,可单击下方新建安全组链接,使用放通全部端口模板创建新的安全组,并返回该页面,刷新安全组列表后选择刚才创建的安全组 |
指定项目 | 保持默认 |
实例名 | 立即命名,并指定一个实例名称,例如 nextcloud。(该实例名并非数据库名,可任意指定,后期也可修改) |
购买数量 | 1 |
购买时长 | 根据需求进行选择 |
自动续费、服务条款 | 勾选 |
2.单击立即购买,确认订单内容无误后,单击提交订单并根据提示完成支付。
1.打开并登录 MySQL 控制台,选择先前购买 MySQL 时选择的地域,并选择所购的 MySQL 示例,单击更多操作中的初始化,根据下表说明进行配置:
配置项 | 值 |
---|---|
支持字符集 | UTF8MB4 |
表名大小写敏感 | 开启 |
自定义端口 | 3306 |
设置 root 账号密码、确认密码 | 设置一个足够复杂的密码并牢记 |
2.单击确定,预计5-10分钟后完成 MySQL 实例初始化,如果实例状态一直没有变化为运行中,可刷新实例列表查看最新状态。
1.打开并登录 对象存储控制台(首次使用需先开通对象存储服务),进入存储桶列表,单击创建存储桶,根据下表说明进行配置:
配置项 | 值 |
---|---|
名称 | 输入一个自定义的存储桶名称,例如 nextcloud。注意,该名称确定后将不允许更改 |
所属地域 | 与所购 CVM 所属地域保持一致 |
其他 | 保持默认 |
2.完成以上配置后,单击确定完成创建。
1.使用 SSH 工具登录到新购服务器。
2.执行下述命令安装 Nginx:
yum install nginx
当提示以下信息时,按 Y 并回车确认安装(下同)。
Is this ok [y/d/N]:
3.当出现以下信息时,表示安装完成。
Complete!
[root@VM-0-10-centos ~]#
4.接下来执行以下命令,验证是否可以正常查看 Nginx 版本。
nginx -v
假如出现以下信息,则验证安装完成。
nginx version: nginx/1.16.1
1.使用 SSH 工具登录到新购服务器。
2.执行下述命令开始安装 PHP 7.4:
yum install epel-release yum-utils
3.依次执行下述命令:
命令1:
yum install http://rpms.remirepo.net/enterprise/remi-release-7.rpm
说明 执行上述命令时如遇速度过慢、进度长时间不动,可以按 Ctrl-C 取消并重新执行该条命令(下同)。
命令2:
yum-config-manager --enable remi-php74
命令3:
yum install php php-fpm
4.安装完成后,执行以下命令,验证是否可以正常查看 PHP 版本。
php -v
假如出现以下信息,则验证安装完成。
PHP 7.4.8 (cli) (built: Jul 9 2020 08:57:23) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
除了基本的 PHP 外,NextCloud 还依赖其他 PHP 模块来实现部分功能。有关 NextCloud 依赖的详细模块信息,可参阅 NextCloud 官方文档。
本教程中将安装 NextCloud 必选的 PHP 模块,如果您计划后续使用 NextCloud 的其他可选功能,请留意并自行安装所依赖的其他 PHP 模块。
1.使用 SSH 工具登录到新购服务器。
2.执行下述命令安装 PHP 模块:
yum install php-xml php-gd php-mbstring php-mysqlnd php-intl php-zip
3.安装完成后,执行以下命令查看已安装的 PHP 模块。
php -m
4.如果还需要安装其他模块,重复执行 yum install < php-module-name > 即可。
chown -R nginx:nginx /var/lib/php
systemctl enable php-fpm # 命令1
命令2:
systemctl start php-fpm # 命令2
1.使用 SSH 工具登录到新购服务器。
2.执行下述命令修改网站目录所有者:
chown -R nginx:nginx /var/www
3.备份当前的 Nginx 配置文件 /etc/nginx/nginx.conf,您可以:
3.1 执行 cp /etc/nginx/nginx.conf ~/nginx.conf.bak 将当前配置文件备份到家(HOME)目录。 3.2 使用 SFTP 或 SCP 等软件将当前配置文件下载到本地计算机。
4.将 /etc/nginx/nginx.conf 修改或替换为如下内容:
# For more information on configuration, see:
# * Official English Documentation: http://nginx.org/en/docs/
user nginx;
worker_processes auto;
error_log /var/log/nginx/error.log;
pid /run/nginx.pid;
# Load dynamic modules. See /usr/share/doc/nginx/README.dynamic.
include /usr/share/nginx/modules/*.conf;
events {
worker_connections 1024;
}
http {
log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"';
access_log /var/log/nginx/access.log main;
sendfile on;
tcp_nopush on;
tcp_nodelay on;
keepalive_timeout 65;
types_hash_max_size 2048;
include /etc/nginx/mime.types;
default_type application/octet-stream;
# Load modular configuration files from the /etc/nginx/conf.d directory.
# See http://nginx.org/en/docs/ngx_core_module.html#include
# for more information.
include /etc/nginx/conf.d/*.conf;
server {
listen 80 default_server;
listen [::]:80 default_server;
server_name _;
root /var/www/nextcloud;
add_header Referrer-Policy "no-referrer" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-Download-Options "noopen" always;
add_header X-Frame-Options "SAMEORIGIN" always;
add_header X-Permitted-Cross-Domain-Policies "none" always;
add_header X-Robots-Tag "none" always;
add_header X-XSS-Protection "1; mode=block" always;
client_max_body_size 512M;
fastcgi_buffers 64 4K;
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;
# Load configuration files for the default server block.
include /etc/nginx/default.d/*.conf;
location / {
try_files $uri $uri/ =404;
index index.php;
}
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\/.+|oc[ms]-provider\/.+)\.php(?:$|\/) {
fastcgi_split_path_info ^(.+?\.php)(\/.*|)$;
set $path_info $fastcgi_path_info;
try_files $fastcgi_script_name =404;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_param PATH_INFO $path_info;
fastcgi_param modHeadersAvailable true;
fastcgi_pass 127.0.0.1:9000;
fastcgi_intercept_errors on;
fastcgi_request_buffering off;
}
location ~ ^\/(?:updater|oc[ms]-provider)(?:$|\/) {
try_files $uri/ =404;
index index.php;
}
location ~ \.(css|js|svg|gif)$ {
add_header Cache-Control "max-age=15778463";
}
location ~ \.woff2?$ {
add_header Cache-Control "max-age=604800";
}
}
# Settings for a TLS enabled server.
#
# server {
# listen 443 ssl http2 default_server;
# listen [::]:443 ssl http2 default_server;
# server_name _;
# root /usr/share/nginx/html;
#
# ssl_certificate "/etc/pki/nginx/server.crt";
# ssl_certificate_key "/etc/pki/nginx/private/server.key";
# ssl_session_cache shared:SSL:1m;
# ssl_session_timeout 10m;
# ssl_ciphers HIGH:!aNULL:!MD5;
# ssl_prefer_server_ciphers on;
#
# # Load configuration files for the default server block.
# include /etc/nginx/default.d/*.conf;
#
# location / {
# }
#
# error_page 404 /404.html;
# location = /40x.html {
# }
#
# error_page 500 502 503 504 /50x.html;
# location = /50x.html {
# }
# }
}
5.依次执行下述命令,并启动 Nginx 服务:
命令1:
systemctl enable nginx
命令2:
systemctl start nginx
1.登录 对象存储控制台。
2.找到此前创建的存储桶,并单击存储桶名称。
3.在左侧导航栏中,选择概览页签,记录基本信息中的存储桶名称和所属地域中的英文部分。
建议使用子账号密钥,授权遵循 最小权限指引,降低使用风险,子账号密钥获取可参考 子账号访问密钥管理。
1.使用文本编辑工具创建 config.php,输入如下内容并根据注释修改相关的值:
<?php
$CONFIG = array(
'objectstore' => array(
'class' => '\\OC\\Files\\ObjectStore\\S3',
'arguments' => array(
'bucket' => 'nextcloud-1250000000', // 存储桶名称(空间名称)
'autocreate' => false,
'key' => 'AKIDxxxxxxxx', // 替换为用户的 SecretId
'secret' => 'xxxxxxxxxxxx', // 替换为用户的 SecretKey
'hostname' => 'cos.<Region>.myqcloud.com', // 将 <Region> 修改为所属地域,如 ap-shanghai
'use_ssl' => true,
),
),
);
如下图所示:
2.将该文件保存并上传到 /var/www/nextcloud/config/ 目录下(保持文件名为config.php),您可以通过 SFTP 或 SCP 软件上传文件,也可以通过 rz -bye 命令上传。
3.执行下述命令修改配置文件的所有者:
chown nginx:nginx /var/www/nextcloud/config/config.php
若您计划使用自己的域名而不是 IP 地址访问您的 NextCloud 服务端,您可参考各域名注册商(例如腾讯云 域名注册)和相关域名解析服务(例如腾讯云 DNS 解析)的说明文档,注册新域名并将域名解析到您 CVM 的 IP 地址并完成备案。
由于 NextCloud 服务端在安装过程中会记录安装时使用的域名或 IP 地址,因此建议您在开始安装前完成域名的注册、解析和备案,并使用域名访问 NextCloud 服务端的安全界面。
如果您在完成 NextCloud 服务端后需要更换域名或 IP 地址,您可以自行修改 /var/www/nextcloud/config/config.php 配置文件中的 trusted_domains,详情请参阅 NextCloud 官方文档。
1.使用浏览器访问 NextCloud 服务端,创建并牢记管理员用户名和密码。
2.展开存储与数据库,根据下表说明进行配置:
配置项 | 值 |
---|---|
数据名录 | /var/www/nextcloud/data(保持默认) |
配置数据库 | MySQL/MariaDB |
数据库用户 | root |
数据库密码 | 初始化云数据库 MySQL 时填写的 root 密码 |
数据库名 | nextcloud(或其他未被使用的数据库名) |
数据库主机(默认显示为 localhost) | 云数据库 MySQL 的内网地址 |
3.单击安装完成,等待 NextCloud 服务端完成安装。
4.如果安装过程中出现504 Gateway Timeout 等错误信息,可直接刷新重试。
5.安装完成后,使用管理员账号登录 NextCloud 服务端即可开始使用网页版 NextCloud。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。