个人云存储 - Linux LNMP环境下Nextcloud的搭建

Author Avatar
Lussac 2018年02月27日 ; Views: 15787
  • 在其它设备中阅读本文章

个人云存储 - Linux LNMP 环境下 Nextcloud 的搭建

搭建个人云储存的选择有很多,如 Owncloud,Nextcloud,Seafile,Syncthing,FileRun 等等。

经过对比后我选择先尝试搭建 Nextcloud,在过程中遇到了一些问题并找到了解决办法,在本文中予以记录,希望能对看过本文的人有所帮助。

Nextcloud 官网:https://nextcloud.com
Nextcloud 下载:https://nextcloud.com/install/
Nextcloud 可用历史版本:https://nextcloud.com/changelog/
Nextcloud 官方文档:https://docs.nextcloud.com/server/13/admin_manual/installation/index.html
Nextcloud 帮助社区:https://help.nextcloud.com


一、准备

要想搭建 Nextcloud 用作私人云盘,你需要一个搭建了 PHP 运行环境的 VPS,并对下列有一定了解:

  1. 在 VPS 上部署网站的方法
  2. 通过 Linux 命令行对文件进行移动删除解压等操作

二、安装步骤

  1. 准备好 LAMP 或 LNMP 环境 (PHP 版本应不低于 5.6.0)
  2. 绑定好域名、添加 SSL 证书(可选)、创建 nextcloud 的数据库
  3. 下载 Nextcloud 压缩包
    打开 官网 查看可用版本,复制所需版本的下载链接,本文以 Nextcloud 13.0.0 为例:
    通过 xshell 连接到你的 VPS,进入网站根目录(以 /home/wwwroot/nextcloud 为例),依次执行以下命令:

    cd /home/wwwroot/nextcloud
    wget https://download.nextcloud.com/server/releases/nextcloud-13.0.0.zip
    unzip nextcloud-13.0.0.zip
    mv /home/wwwroot/nextcloud/cloud/* /home/wwwroot/nextcloud/
    chown -R www:www /home/wwwroot/nextcloud
  4. 浏览器访问你所绑定的域名
    按照引导创建管理员账户,数据库选择 MySQL/MariaDB,填入正确的数据库用户及密码即可完成安装。
  5. 完成后,你就可以登录到 Nextcloud 后台。这就是 Nextcloud 的用户界面:
    1.jpg

三、遇到的问题

1. Internal Server Error 或 HTTP ERROR 503

把所有文件解压并移动到网站根目录后,从浏览器访问所绑定的域名,无法正常进入安装页面,而是出现以下情况:

Internal Server Error 或 HTTP ERROR 503 (图片暂缺)

是由于网站文件没有权限导致的,输入以下命令即可:

chown -R www:www /home/wwwroot/nextcloud

按照上文步骤安装的,已经执行过此命令,无需重复执行。

2. Nextcloud 无法设置中文

如果一切正常,从安装到使用界面都应是中文界面的,但作者在初次安装时却遇到了 Nextcloud 安装界面、使用界面全是英文,且无法在设置中更改。
2.jpg

并且依照 官方参考文档 config/config.php 插入:

'default_language' => 'zh_CN'
或
'force_language' => 'zh_CN'

都无效。
最终经过搜索 owncloud 相似问题时找到了 解决办法 :

原来是 VPS 上的 LNMP 环境问题,它默认把 scandir 函数禁用了,取消禁用即可。

查看 php.info()发现 scandir 确实被禁用了:
scandir.jpg

如何取消?(进行以下操作前请先了解 Linux 中 vi/vim 编辑器的简单命令与用法,或使用 nano 进行编辑)
找到你的 php.ini 文件位置,以下以 /usr/local/php/etc/php.ini 为例

vi /usr/local/php/etc/php.ini

在 vi 的命令模式中输入(<Enter>为回车键)

/disable_functions<Enter>

进入 vi 的编辑模式,删除 scandir,返回命令模式输入:wq保存并退出。再重启 php-fpm 或 LNMP。
重新访问绑定的域名,安装和使用界面都变成了中文,问题解决。

四、参考资料

  1. Nextcloud 个人云存储绝佳选择:一键自动安装方法和云盘使用体验
    https://wzfou.com/nextcloud/
  2. 手动安装 NextCloud 教程 - 免费开源的私有云存储网盘可播放图片音乐
    https://wzfou.com/nextcloud-install/
  3. centos6.5 下使用 lnmp 架构安装 nextcloud 云盘
    https://blog.51cto.com/thedream/1940531
  4. 网盘不靠谱 那就自己搭建 256TB 的网盘呗 — Nextcloud 搭建过程
    https://post.m.smzdm.com/p/474074/
  5. nextcloud——搭建自己的云盘
    https://blog.csdn.net/shenyuflying/article/details/60470127
  6. Nginx configuration — Nextcloud 13 Administration Manual 13 documentation
    https://docs.nextcloud.com/server/13/admin_manual/installation/nginx.html
  7. 解决 owncloud 改不了中文语言
    https://www.hello2099.com/1251.html/
  8. Linux 下的 vi 编辑命令中查找·替换详解
    https://www.cnblogs.com/longjshz/p/5775584.html
  9. 常见问题 - LNMP 一键安装包
    https://lnmp.org/faq.html
  10. 搭建 NextCloud 服务笔记 - 基础篇
    https://segmentfault.com/a/1190000008456241
    Lussac
    Lussac  2019-08-23, 00:14

    Posting ads will result in your IP address being banned.
    發廣告的你媽必死嗷。