nextcloud 优化

设置php.ini

 vim /etc/php/7.0/apache2/php.ini
添加以下代码:
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

 

去除index.php

访问Nextcloud时,url中会含有index.php

 1.编辑config/config.php

在里面加入以下内容: 将URL改成自己的域名

'overwrite.cli.url' => 'http://自己的域名',
'htaccess.RewriteBase' => '/',

这段代码的作用是设置.htaccess生成规则。

2.更新.htaccess文件

使用OCC命令重写.htaccess文件

cd /var/www/nextcloud/
sudo -u www-data php occ maintenance:update:htaccess

 

  

安装APCu和Memcached

apt-get install php-apcu memcached php-memcached

 在nextcloud/config/config.php中加入以下内容 

  'memcache.local' => '\OC\Memcache\APCu',
  'memcache.distributed' => '\OC\Memcache\Memcached',
  'memcached_servers' => array(
     array('localhost', 11211),
     ),
 
验证Memcached守护程序是否正在使用ps ax运行:
ps ax | grep memcached
19563 ? Sl 0:02 /usr/bin/memcached -m 64 -p 11211 -u memcache -l 127.0.0.1

没有运行使用 service memcached start 运行

编辑config.php文件

vim /var/www/html/nextcloud/config/config.php

);前添加下面的的代码:

'memcache.local' => '\OC\Memcache\APCu',
'memcache.distributed' => '\OC\Memcache\Memcached',
'memcached_servers' => array(
     array('localhost', 11211),
     ),

注:一台服务器只留本地的 删除其它的。如多台 可以填加

array('server1.example.com', 11211), 
array('server2.example.com', 11211),

指向第二、第三台memcached服务器(如果没有,这两行必须删去。同理,按以上格式可以增加更多memcached服务器),实现将数据缓存分布到多个服务器上。

 
 

安装openssl 制作证书


一般系统自带,可以通过openssl version查看,如果没有,

sudo apt-get install openssl
创建目录

创建一个名为ssl的目录

sudo mkdir /etc/apache2/ssl
创建一个自签名凭证

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout /etc/apache2/ssl/apache.key -out /etc/apache2/ssl/apache.crt
开启Apache SSL模块

运行以下命令开启ssl模块

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

将其中的证书相关配置替换为

SSLCertificateFile /etc/apache2/ssl/apache.crt 
SSLCertificateKeyFile /etc/apache2/ssl/apache.key 
在/etc/apache2/sites-enable/目录下为刚才的default-ssl配置文件生成软连接

sudo ln -s /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-enable/001-default-ssl.conf
检查/etc/apache2/ports.conf文件中443端口已经监听

Listen 443
重启apache

sudo /etc/init.d/apache2 restart

 

 
 
 
 
 
 
 

 开启ssl

1、开启SSL模块      在安装 apache2后,需要重启才能使用a2enmod 等命令。为下一步准备。

sudo a2enmod ssl

2、启用SSL站点

sudo a2ensite default-ssl

3、加入监听端口 443   

$ sudo vim /etc/apache2/ports.conf

编辑Apache端口配置,加入443端口 (HTTPS采用的443端口传输数据)
  Listen 443

4、配置虚拟主机

$ sudo vim /etc/apache2/sites-enabled/default-ssl.conf
在ServerAdmin下另起一行加上ServerName 你的域名:443,
并找到SSLEngine,SSLCertificateFile,SSLCertificateKeyFile并修改成如下:
<IfModule mod_ssl.c>
        <VirtualHost _default_:443>
             ServerAdmin webmaster@localhost
             ServerName 127.0.1.1:443
             DocumentRoot /var/www/html

            SSLEngine on
            SSLCertificateFile /etc/apache2/ssl/apache.crt
            SSLCertificateKeyFile /etc/apache2/ssl/apache.key                    

 

 
 
 

相关文章: