锦方的个人网页 · 如果有一天你突然想起了我


Debian安装nextcloud

目录

(初步安装未做安全优化)

安装步骤

apt-get update
apt-get upgrade
apt-get vim zip sudo
apt-get install apache2 mariadb-server libapache2-mod-php7.0
apt-get install php7.0-gd php7.0-json php7.0-mysql php7.0-curl php7.0-mbstring
apt-get install php7.0-intl php7.0-mcrypt php-imagick php7.0-x`ml php7.0-zip
systemctl start apache2
systemctl enable apache2
systemctl start mysql
systemctl enable mysql
reboot

配置MariaDB

mysql_secure_installation

设置数据库

mysql -u root -p

创建名为nextclouddb的数据库

MariaDB [(none)]>CREATE DATABASE nextclouddb;

创建nextcloud用户名和密码

MariaDB [(none)]>CREATE USER 'nextcloud'@'localhost' IDENTIFIED BY 'password';
MariaDB [(none)]>GRANT ALL PRIVILEGES ON nextclouddb.* TO 'nextcloud'@'localhost';

重新加载MariaDB权限

MariaDB [(none)]>FLUSH PRIVILEGES;

退出

MariaDB [(none)]>\q

安装NextCloud

wget https://download.nextcloud.com/server/releases/nextcloud-13.0.4.zip
unzip nextcloud-13.0.4.zip
mv nextcloud /var/www/html/
chown -R www-data:www-data /var/www/html/nextcloud

设置配置

vi /etc/apache2/sites-available/nextcloud.conf
Alias / "/var/www/nextcloud/"

<Directory /var/www/nextcloud/>
  Options +FollowSymlinks
  AllowOverride All

 <IfModule mod_dav.c>
  Dav off
 </IfModule>

 SetEnv HOME /var/www/nextcloud
 SetEnv HTTP_HOME /var/www/nextcloud

</Directory>

链接配置

ln -s /etc/apache2/sites-available/nextcloud.conf /etc/apache2/sites-enabled/nextcloud.conf

关闭默认配置

a2dissite 000-default
a2ensite nextcloud

其他

a2enmod rewrite
a2enmod headers
a2enmod env
a2enmod dir
a2enmod mime
a2enmod setenvif

重启apache2

systemctl restart apache2

ufw使用

启用

ufw enable

使用方法

ufw allow 80

ssl

a2enmod ssl
a2ensite default-ssl
service apache2 reload

配置php

找到php.ini文件地址

php -i | grep "Loaded Configuration File"

添加

opcache.enable=1
opcache.enable_cli=1
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=10000
opcache.memory_consumption=128
opcache.save_comments=1
opcache.revalidate_freq=1

错误

起因 service apache2 restart

Job for apache2.service failed. See "systemctl status apache2.service" and "journalctl -xe" for details.

解决方法

cd /etc/apache2
apache2ctl configtest