美文网首页
Ubuntu下手动安装NextCloud

Ubuntu下手动安装NextCloud

作者: 谭佑平 | 来源:发表于2019-12-16 21:45 被阅读0次

    文/老谭

    NextCloud 是基于云技术的工程教育平台,利用云技术,提高工程教育过程中教学、实验与创新的效率与效果。每一位nextcloud的使用者都可以以教师或学生身份登录, 从而使得每个人都可以传授知识也可以学习知识,真正做到any time, any where的工程教育全新愿景。

    安装环境:Ubuntu 16.04.6 LTS

    一、安装Apache2

    sudo apt-get install apache2

    如果出现如下错误:

    E: Could not get lock /var/lib/dpkg/lock - open (11 Resource temporarily unavailable)

    E: Unable to lock the administration directory (/var/lib/dpkg/), is another process using it?

    执行如下命令后,再执行安装apache2命令:

    sudo  rm  /var/lib/apt/lists/lock

    sudo  rm  /var/cache/apt/archives/lock

    sudo  rm  /var/lib/dpkg/lock

    安装完成后,浏览器访问http://your ip/,出现It works!网页表示安装成功。

    修改状态:

    service apache2 status|start|stop|restart

    站点目录:/var/www/

    修改权限:

    sudo chmod 777 /var/www

    安装目录:/etc/apache2/

    全局配置:/etc/apache2/apache2.conf

    监听端口:/etc/apache2/ports.conf

    虚拟主机:/etc/apache2/sites-enabled/000-default.conf

    二、安装MariaDB

    sudo apt-get install mariadb-server mariadb-client

    如果出现:

    dpkg was interrupted you must marually run 'dpkg --configure -a' to correct the problem

    则执行命令:

    dpkg --configure -a

    如果出现:

    dpkg: error: parsing file'/var/lib/dpkg/updates/0003'near line 0:

    newlineinfield name'#padding'

    则执行命令:

    sudo rm /var/lib/dpkg/updates/*

    sudo apt-get update

    即可。

    启动MariaDB服务:

    sudo systemctl start mysql

    查看状态:

    sudo systemctl status mysql

    重启服务:

    service mysql restart

    查看监听端口的情况:

    netstat -tunpl 或 netstat -tap

    执行初始化安全脚本,默认root密码为空,设置root密码和其他选项:

    sudo mysql_secure_installation

    为NextCloud创建数据库和用户

    创建数据库nextcloud,用户名nextcloud,密码XXXXXXXX

    sudo mysql -u root -p

    进入MariaDB后,执行:

    #创建数据库,名为:nextcloud

    CREATE DATABASE nextcloud;

    #给用户nextcloud全部权限

    GRANT ALL PRIVILEGES ON nextcloud.* TO 'nextcloud'@'localhost' IDENTIFIED BY 'XXXXXXXX';

    FLUSH PRIVILEGES;

    #退出

    \q

    三、安装PHP及其他模块

    sudo apt-get install php7.0

    sudo apt-get install apache2 mariadb-server libapache2-mod-php7.0

    sudo apt-get install php7.0-gd php7.0-json php7.0-mysql php7.0-curl php7.0-mbstring

    sudo apt-get install php7.0-intl php7.0-mcrypt php-imagick php7.0-xml php7.0-zip

    测试:

    php7.0 -v

    重启服务:

    service apache2 restart

    测试Apache能否解析PHP

    sudo vi /var/www/html/phpinfo.php

    文件中写:<?php echo phpinfo();?>

    浏览器访问:http://your ip/phpinfo.php,出现PHP Version网页

    四、安装phpMyAdmin

    sudo apt-get install phpmyadmin

    安装:选择apache2,点击确定。下一步选择是要配置数据库,并输入密码。

    创建phpMyAdmin快捷方式:

    sudo ln -s /usr/share/phpmyadmin /var/www/html

    启用Apache mod_rewrite模块:

    sudo a2enmod rewrite

    重启服务:

    service php7.0-fpm restart & service apache2 restart

    测试:浏览器访问:http://your ip/phpmyadmin

    五、配置Apache

    sudo vi /etc/apache2/apache2.conf

    在文件最后面添加:

    AddType application/x-httpd-php .php .htm .html

    AddDefaultCharset UTF-8

    然后重启Apache服务。

    到此为止,web站点其实已经搭建起来了,只需在/var/www/html目录下存放网页文件,电脑主机就可以访问服务器了,http://ip/xxx.html。

    六、下载nextcloud

    cd /var/www/html

    sudo wget https://download.nextcloud.com/server/releases/nextcloud-15.0.5.zip  --no-check-certificate

    sudo unzip nextcloud-15.0.5.zip       

    ##如果没有安装unzip软件,则在命令行输入sudo apt-get install unzip 即可。

    sudo rm nextcloud-15.0.5.zip

    接下来只需要在电脑主机的浏览器上输入http://your ip/nextcloud,就可以正常访问了。

    以上步骤是实践过程,到最后的结果是不能正常访问,界面如下:

    访问出错

    昨晚调试了几个小时也没能搞定,包括更新源、彻底删除PHP7.0后安装PHP7.1、重装Apache2等等。今天请教高手,继续调试。

    加油(ง •̀_•́)ง


    2019.12.17  继续安装

    先重装PHP7.0,按前面安装的步骤即可。访问http://ip/nextcloud,发现问题依旧,还是上图的样子。

    找高手分析原因,发现有2个权限相关的问题:

    1、目录权限问题

    sudo chmod -R 0777 /var/www/html/nextcloud

    即可。

    2、数据库权限问题

    mysql -u root -p

    mysql>grant all privileges on *.* to root@"localhost" identified by "XXXX" with grant option;        PS:XXXX代表你的root密码

    参考:https://www.douban.com/note/311849800/

    接下来,重启一下php和apache2服务:

    sudo service php7.0-fpm restart & service apache2 restart

    如果遇到以下提示:

    Warning: apache2.service changed on disk. Run 'systemctl daemon-reload' to reload units.

    解决如下 :

    systemctl daemon-reload

    systemctl start apache2

    接下来修改apache服务器默认网站根目录,有以下3处:

    1. 修改 /etc/apache2/apache2.conf 文件

    <Directory  /var/www/html/nextcloud>

        Options Indexes FollowSymLinks

        AllowOverride None

        Require all granted

    </Directory>

    2. 修改 /etc/apache2/sites-available/000-default.conf 文件

    DocumentRoot  /var/www/html/nextcloud

    3. 修改 /etc/apache2/sites-available/default-ssl.conf 文件

    DocumentRoot  /var/www/html/nextcloud

    最后重启apache服务器即可。

    sudo service apache2 restart

    在电脑主机的浏览器上输入http://your ip addr,界面如下:

    登录界面

    ————————————————

    The end.

    相关文章

      网友评论

          本文标题:Ubuntu下手动安装NextCloud

          本文链接:https://www.haomeiwen.com/subject/eiednctx.html