NextCloud foi fundado por Frank Karlitschek, cofundador do ownCloud original. Ele herda a tecnologia central do ownCloud original e tem muitas inovações. Em termos de funções, NextCloud é semelhante ao ownCloud, e ainda mais rico em termos de experiência do usuário, NextCloud é muito fácil de instalar e usar.
NextCloud não é apenas uma plataforma de disco de rede em nuvem privada, mas também oferece suporte ao uso simultâneo e colaborativo por vários usuários. NextCloud oferece suporte ao registro de conta e pode permitir a verificação em duas etapas para garantir a segurança da conta. Ao mesmo tempo, NextCloud pode definir períodos de validade para arquivos compartilhados publicamente e oferece suporte direto à visualização e reprodução online de vídeos, músicas, documentos do Office, etc.
NextCloud também oferece centenas de aplicativos e plug-ins gratuitos, que podem transformar o NextCloud em uma plataforma online de compartilhamento e edição de documentos, plataforma de entretenimento de música e vídeo e plataforma de armazenamento e download de arquivos. Claro, se você instalar o NextCloud manualmente, você mesmo deverá configurar o ambiente para esses plug-ins.
Este artigo compartilhará um tutorial sobre como instalar manualmente o NextCloud. Para mais serviços e plataformas criados por webmasters, você também pode tentar:
- Lsyncd cria espelho de sincronização - usa Lsyncd para obter sincronização em tempo real entre servidores locais e remotos
- Tutorial de integração VestaCP e WHMCS - realize a ativação de autoatendimento de host virtual e vendas de produtos de espaço de host
- Método de integração de ISPConfig e WHMCS - ativa automaticamente o host virtual e os usuários do espaço de gerenciamento
PS: Atualizado em 20 de setembro de 2017, Amigos que consideram a instalação manual problemática podem usar o método de instalação com um clique. Referência: o armazenamento em nuvem pessoal Nextcloud é uma excelente escolha: método de instalação automática com um clique e disco em nuvem. experiência de uso.
1. Instalação do LAMP NextCloud
Site oficial do NextCloud:
- HTTPS://próxima nuvem.com/
Prepare o ambiente LAMP. LAMP refere-se a ambientes Apache, Mysql ou Mariadb, e o NextCloud recomenda oficialmente o uso do Apache para executar o NextCloud e vem com regras .htaccess. Para Nginx, você ainda precisa escrever manualmente as regras de reescrita de URL do NextCloud. Os seguintes métodos são recomendados para instalar o LAMP com um clique:
- Ferramenta de construção de sites Linux VPS Instalação e uso de LNMP 1.4 - renovação automática de configuração SSL e suporte a PHP multi-versão
- Script de instalação com um clique do OneinStack - implante facilmente o certificado Let's Encrypt e configure o site HTTPS
Tanto o LNMP 1.4 quanto o OneinStack podem instalar o ambiente LAMP com um clique. Aqui eu uso o OneinStack como uma demonstração de operação. Ao selecionar componentes ao instalar o OneinStack, basta selecionar Apache. base de dados. Outros componentes de cache também podem ser instalados.
Vincule o nome de domínio e adicione o certificado SSL. OneinStack pode adicionar diretamente um certificado SSL ao adicionar um site. Ao mesmo tempo, é necessário que o nome de domínio vinculado seja resolvido para o IP do servidor com antecedência, para que possa gerar um certificado Lets free com um clique. .
Baixe o pacote de nível NextCloud e instale-o. Acesse o site oficial: https://nextcloud.com/install/#instructions-server, baixe o pacote mais recente, descompacte-o e carregue-o no diretório raiz do site.
Crie um novo banco de dados para NextCloud.
PS: Atualizado em 1º de setembro de 2018. Obrigado ao baoang pelo lembrete Ao instalar o NC, você pode usar diretamente a conta root no banco de dados. Não há necessidade de configurar outra conta pan. Porque o NC não usará esta conta, mas apenas a usará para instalação. Após a conclusão da instalação, ele gerará sua própria conta de banco de dados no formato de ID nc_administrator, como nc_qi.
Acessar o nome de domínio o levará automaticamente à página de instalação do NextCloud. Preencha sua conta e senha de administrador e defina o caminho de armazenamento do arquivo abaixo. Ao mesmo tempo, preencha as informações do banco de dados SQL para concluir a instalação. (Clique para ampliar)
Depois de concluído, você pode fazer login no backend NextCloud, que é a interface de gerenciamento de usuários do NextCloud. (Clique para ampliar)
2. Instalação LNMP NextCloud
A preparação do ambiente LNMP é igual à anterior, exceto que você pode selecionar o ambiente Nginx ao instalar o LNMP 1.4 e OneinStack, e outros componentes podem ser instalados seletivamente. Se o Zend OPcache estiver instalado, um erro poderá ser exibido durante a instalação: "PHP está configurado para remover blocos embutidos, o que fará com que vários aplicativos principais não consigam acessar
.
Solução: Modifique os parâmetros do Opcache no php.ini. Se for Oneinstack, você precisa modificá-lo em /usr/local/php/etc/php.d/ext-opcache.ini. Encontre este código e altere-o para: opcache.save_comments=1, pois o padrão é 0, basta reiniciar o php-fpm após alterá-lo.
Escrever regras de reescrita de endereço de URL. Ocorreu um erro: Nenhum arquivo de entrada especificado Principalmente porque o Nginx ainda precisa escrever suas próprias regras de reescrita. Você pode copiar e colar as seguintes regras em /usr/local/nginx/conf/vhost/your website.conf. de acordo com as regras Se houver muitos, você também pode criar um arquivo separado e referenciá-lo em seu website.conf. As regras específicas são as seguintes:
#(可选)添加如下header主要为了安全
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
add_header X-Robots-Tag none;
add_header X-Download-Options noopen;
add_header X-Permitted-Cross-Domain-Policies none;
#(可选)为了支持user_webfinger app
rewrite ^/.well-known/host-meta /public.php?service=host-meta last;
rewrite ^/.well-known/host-meta.json /public.php?service=host-meta-json last;
#日历和联系人,建议加上
location = /.well-known/carddav {
return 301 $scheme://$host/remote.php/dav;
}
location = /.well-known/caldav {
return 301 $scheme://$host/remote.php/dav;
}
#设置上传文件的最大大小
client_max_body_size 512M;
fastcgi_buffers 64 4K;
#将所有请求转发到index.php上
location / {
rewrite ^ /index.php$uri;
}
#安全设置,禁止访问部分敏感内容
location ~ ^/(?:build|tests|config|lib|3rdparty|templates|data)/ {
deny all;
}
location ~ ^/(?:.|autotest|occ|issue|indie|db_|console) {
deny all;
}
#默认有,替换原来的就行
location ~ ^/(?:index|remote|public|cron|core/ajax/update|status|ocs/v[12]|updater/.+|ocs-provider/.+).php(?:$|/) {
fastcgi_split_path_info ^(.+.php)(/.*)$;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param modHeadersAvailable true;
fastcgi_param front_controller_active true;
fastcgi_pass unix:/dev/shm/php-cgi.sock; #这边我改过,参照原来的
fastcgi_intercept_errors on;
fastcgi_request_buffering off;
include fastcgi.conf;
}
#安全设置,禁止访问部分敏感内容
location ~ ^/(?:updater|ocs-provider)(?:$|/) {
try_files $uri/ =404;
index index.php;
}
location ~ .(?:css|js|woff|svg|gif)$ {
try_files $uri /index.php$uri$is_args$args;
add_header Cache-Control "public, max-age=15778463";
add_header X-Content-Type-Options nosniff;
add_header X-XSS-Protection "1; mode=block";
add_header X-Robots-Tag none;
add_header X-Download-Options noopen;
add_header X-Permitted-Cross-Domain-Policies none;
access_log off;
}
location ~ .(?:png|html|ttf|ico|jpg|jpeg)$ {
try_files $uri /index.php$uri$is_args$args;
access_log off;
}
fileinfoMemcachedRedis, etc. pode ser instalado com um clique através do OneinStack.
Otimização de segurança e desempenho do NextCloud: Este tipo de prompt geralmente pode ser visto no gerenciamento do servidor do NextCloud. Recomenda-se instalar apenas uma classe de cache diretamente.
Para a segurança e o desempenho do seu serviço, configure todas as configurações corretamente. Realizaremos algumas verificações automatizadas para ajudá-lo a fazer isso. Verifique a seção "Dicas" e a documentação relacionada para obter detalhes.
O módulo PHP 'fileinfo' está faltando. Recomendamos fortemente ativar este módulo para obter resultados mais precisos na detecção do tipo MIME.
O cabeçalho de solicitação HTTP "Strict-Transport-Security" não está configurado por pelo menos "15552000" segundos. Para maior segurança, recomendamos ativar o HSTS conforme descrito em Dicas de segurança.
Memcache não está configurado. Se disponível, configure o memcache para melhorar o desempenho. Consulte nossa documentação para obter mais informações.
O componente OPcache do PHP não está configurado corretamente. seguintes configurações: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. revalidar_freq=1
NextCloud adiciona cache Memcached. Modifique o arquivo config.php no diretório config no diretório do programa e adicione o seguinte ao arquivo de configuração. Estas são várias instâncias do Memcached.
'memcache.local' => 'OCMemcacheAPCu',
'memcache.distributed' => 'OCMemcacheMemcached',
'memcached_servers' => array(
array('localhost', 11211),
array('server1.example.com', 11211),
array('server2.example.com', 11211),
),
NextCloud adiciona cache Redis. Adicione o seguinte no arquivo de configuração, isso é conectado através de TCP
'memcache.local' => 'OCMemcacheRedis',
'redis' => array(
'host' => 'localhost',
'port' => 6379,
),
Também existem conexões UNIX com melhor desempenho
'memcache.local' => 'OCMemcacheRedis',
'redis' => array(
'host' => '/var/run/redis/redis.sock',
'port' => 0,
'dbindex' => 0,
'password' => 'secret',
'timeout' => 1.5,
),
Ao mesmo tempo, o funcionário também recomenda adicionar o seguinte para armazenar bloqueios de arquivos
'memcache.locking' => 'OCMemcacheRedis',
Tudo funciona bem quando o Nginx executa o NextCloud.
3. Adicione aplicativos ao NextCloud
NextCloud fornece um rico conjunto de aplicativos integrados, e esses aplicativos podem ser baixados e instalados diretamente no plano de fundo do NextCloud, um pouco como nosso plug-in WordPress. Eles apresentam alguns plug-ins úteis do NextCloud, acredito que você definitivamente os usará.
Envio SMTP e limitação do arquivo máximo de upload. Esta opção pode ser definida diretamente nas configurações de fundo do NextCloud. O SMTP nos permite chamar um serviço de envio de terceiros para enviar e-mails do NextCloud. O PHP integrado também pode enviar e-mails, mas será basicamente julgado pelos principais. caixas de correio.
Criptografia de armazenamento de dados e armazenamento de plug-ins. Primeiro ative os dois plug-ins, Módulo de criptografia padrão e Suporte de armazenamento externo, no aplicativo NextCloud.
Ativar a criptografia de dados requer cuidado: Porque uma vez que a criptografia de dados estiver ativada, todos os arquivos carregados no servidor serão criptografados no servidor somente se o módulo de criptografia ativado suportar a descriptografia e todos os pré-requisitos forem atendidos (por exemplo: Defina o chave de recuperação) para descriptografar. Observe que a criptografia aumenta o tamanho do arquivo e a criptografia por si só não pode garantir a segurança do sistema. Você precisará definir uma chave de recuperação ao mesmo tempo.
O armazenamento de plug-in permite principalmente que o NextCloud faça login no OC por meio de SMB/CIFS para montar aplicativos de armazenamento de terceiros. É um pouco problemático ativar este plug-in. apt-get install smbclient e apt-get install php-smbclient.
4. Resumo
Quanto à escolha do Apache ou Nginx para executar o NextCloud, depende principalmente da sua familiaridade com o Nginx ou o Apache 1.4 e o OneinStack fez um bom trabalho na otimização do Nginx, certificados SSL, componentes de cache e funções PHP podem ser usados. um clique. A instalação e configuração evitam muitos problemas.
As funções básicas do NextCloud, como visualização de imagens e reprodução online de videoclipes, não são problemas. No entanto, encontrei muitos problemas ao usar o aplicativo NextCloud. O primeiro problema é que a configuração dos aplicativos NextCloud é difícil, como plug-ins de documentos do Office, plug-ins de leitores on-line RSS, etc., todos exigindo configuração manual do ambiente do servidor.