NextCloud私有云盘
温馨提示:
本文最后更新于 2025年01月04日,已超过 105 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我。
1.简介
NextCloud 是一个开源的、自托管的文件同步和共享解决方案,它提供了一个安全且功能丰富的平台,用于存储、同步和共享文件。NextCloud 不仅可以作为个人云存储解决方案,还可以用于企业级部署,支持团队协作、日历、联系人管理、任务管理和更多扩展功能。NextCloud作为一款开源的云存储和协作平台,具有广泛的应用场景。主要有个人云存储和同步、团队协作与项目管理、企业私有网盘构建、在线办公与文档编辑。
2.安装
sudo apt update && sudo apt upgrade -y
sudo apt install apache2 mariadb-server libapache2-mod-php php-gd php-json php-mysql php-curl php-intl php-mbstring php-xml php-zip -y
sudo systemctl start mariadb
sudo mysql_secure_installation
mysql_secure_installation配置
第一个:Enter current password for root (enter for none):
要求输入正确的原root密码,因为我们是新装,没有密码,所以直接回车
第二个:Switch to unix_socket authentication [Y/n]
是否切换到unix_socket 权限验证,因为这个验证不需要密码不安全,所以输入n,回车
第三个:Change the root password? [Y/n]
是否修改root密码,修改密码,输入y回车
第四个:Remove anonymous users? [Y/n]
删除匿名用户,y
第五个:Disallow root login remotely? [Y/n]
禁止root远程登录,y
第六个:Remove test database and access to it? [Y/n]
删除测试库,y
第7个:Reload privilege tables now? [Y/n]
刷新授权表,使设置立即生效,y
数据库登录root用户,创建NextCloud数据库及用户
CREATE DATABASE nextcloud;
GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextclouduser'@'localhost' IDENTIFIED BY 'yourpassword';
FLUSH PRIVILEGES;
EXIT;
下载
wget https://download.nextcloud.com/server/releases/nextcloud-29.0.4.zip
sudo unzip nextcloud-29.0.4.zip -d /var/www/html/
sudo chown -R www-data:www-data /var/www/html/nextcloud
sudo vim /etc/apache2/sites-available/nextcloud.conf
nextcloud.conf内容
<VirtualHost *:80>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html/nextcloud
<Directory /var/www/html/nextcloud/>
Options +FollowSymlinks
AllowOverride All
<IfModule mod_dav.c>
Dav off
</IfModule>
SetEnv HOME /var/www/html/nextcloud
SetEnv HTTP_HOME /var/www/html/nextcloud
</Directory>
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
</VirtualHost>
修改apache端口,更新/etc/apache2/ports.conf配置文件
启用站点,并重启Apache服务
sudo a2ensite nextcloud
sudo a2enmod rewrite headers env dir mime setenvif
sudo systemctl restart apache2
浏览器访问http://your_server_ip_or_domain,在网页上完成NextCloud的安装。
浏览器访问https://github.com/nextcloud/android/releases下载手机APP。
3.其他
1.通过内网IP访问服务报错
通过不被信任的域名访问。
在/var/www/html/nextcloud/config/config.php配置文件的trusted_domains中添加该内网IP即可
<?php
$CONFIG = array (
'trusted_domains' =>
array (
0 => '47.217.34.54',
1 => '192.168.1.9',
2 => '43.23.168.23',
),
'instanceid' => 'ocdeoos5lav2',
);
2.Nginx反向代理注意端口号配置
在/etc/nginx/sites-enabled/default配置文件,配置监听8088端口的HTTPS请求
# 监听 8088 端口的 HTTPS 请求
server {
listen 8088 ssl;
server_name lanzi.cyou;
ssl_certificate /etc/nginx/certs/fullchain.crt; # SSL 证书路径
ssl_certificate_key /etc/nginx/certs/private.pem; # SSL 私钥路径
# 代理到 9999 端口
location / {
proxy_pass http://127.0.0.1:9999; # 代理到9999端口
proxy_set_header Host $host:$server_port; # 保留原始 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;
# 允许的最大请求体大小为10GB
client_max_body_size 10G;
proxy_buffering off;
proxy_request_buffering off;
proxy_read_timeout 3600s;
proxy_send_timeout 3600s;
}
}
正文到此结束
- 本文标签: Linux
- 本文链接: https://lanzi.cyou/article/30
- 版权声明: 本文由咖啡豆原创发布,转载请遵循《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权