Documentação Técnica
- Habilitar Websocket - SIC
- Criação de Storage
- URL públic MYSQL
- Habilitando Cron
- Ferramentas - Tips & Tricks
- Preparar Ambiente para Alta Carga
- Configuração de Backup de Banco
- Nginx - Formas de Balanceamento
- Guia Completo: Criação de Conta SIC e Configuração de Ambiente do Zero
Habilitar Websocket - SIC
Para habilitar o Websocket no ambiente você precisa acessar os nós de LiteSpeed e habilitar o websocket. Primeiro passo é logar no litespeed com usuário e senha, caso não tenha, pode clicar em recuperar senha na SIC:
Ao pedir para resetar a senha, você irá receber os e-mails com acessos e urls. Ao logar no painel do LiteSpeed, clique em Configuration -> Virtual Hosts
Clique em View/Edit da opção Jelastic:
Clique na aba General e depois vá na seção WebSocket e clique em Add:
Após isso basta preencher os campos com os dados conforme o print, clicar em Save e após isso, no topo da página vai aparecer um link para fazer um Graceful Restart, clique nele e ele irá reiniciar o LiteSpeed e seu websocket estará funcionando.
Comandos práticos para testar e verificar o WebSocket:
- Restart do crond: service crond restart
- Personalizar a ordenação dos processos exibidos: htop + f6 (Por exemplo, você pode ordenar por uso de CPU, uso de memória, ID do processo (PID), tempo de execução, etc.)
Se o cliente está na cloudflare, verifique o se o SSL/TLS está configurado como flexible:
Criação de Storage
Criando o Ambiente Storage
No painel da Save In Cloud do cliente, clique em New Environment.
A estrutura do Storage é composta por:
- Apache
- 100 GB de Espaço com cloudlets de 1 à 10 max.
- IP público
- Acesso via SLB habilitado
- PHP mais recente
- Extra Storage (NFS)
- 100 GB de espaço com cloudlets de 1 até 10 max.
- IP Público
- Acesso via SLB Habilitado
Image Configuração Apache:
Imagem configuração Storage:
Caso você não receba os dados de FTP no e-mail do cliente, você fará o passo de adicionar o FTP ao Storage.
Para adicionar FTP ao storage você irá com o mouse em cima do storage e clicará em Add-ons, conforme imagem abaixo:
Clique em install e após a instalação você receberá os dados de login do FTP no e-mail da conta Save In Cloud.
Configurando o ambiente EduStore para FTP
No arquivo .env da aplicação você usará as chaves abaixo para configurar o ftp da aplicação, caso a aplicação use Amazon S3, remova as chaves e cole as chave abaixo substituindo os valores pelo valores de login ftp do cliente.
FILESYSTEM_DRIVER="ftp" FTP_HOST="xxx.xxx.xxx.xx" FTP_USERNAME="jelastic-ftp" FTP_PASSWORD="xxxxxxx" FTP_PORT="21" FTP_URL="https://xxxxxxxxx"
SSL no Storage ou Subdomínio Cloudflare
Seu ftp está configurado, porém há dois caminhos que você pode seguir e ambos estão corretos, um dos caminhos é mais rápido e o outro é mais demorado.
SSL no Storage
Nesse caminho, você adicionará o SSL no seu ambiente storage, para o que mesmo tenha a url protegida pelo HTTPS.
Para fazer isso clique em no Add-ons do Apache e clique em LetsEncrypt, após isso ele irá pedir o domínio ao qual você deseja adicionar o SSL, adicione a url do seu ambiente storage, o mesmo colocado na config acima (FTP_URL): xxxxx.jelastic.saveincloud.net.
SSL com Subdomínio Save In Cloud:
Na cloudflare do cliente você irá em DNS e adicionar um novo registro DNS (Tipo A) apontando para o ip público do seu storage (faixa vermelha é o IP), você poderá escolher o subdomínio que quiser, por padrão usamos o cdn.xxxxxx. Sera o ip publico do apache.
Liberando o CrossDomain do Storage:
No apache do seu storage você vai clicar em configurações, clicar no diretório conf.d e vai abrir o arquivo 10-shared_headers.conf
Troque o bloco de código pelo de baixo (o objetivo dele é que qualquer domínio poderá ver os arquivos do storage):
<IfModule headers_module>
Header set Access-Control-Allow-Origin "*"
Header always set X-XSS-Protection "1; mode=block;"
</IfModule>
Após isso basta reiniciar o apache do storage e testar se sua aplicação já está enviando os arquivos corretamente, sucesso!
Criação de ponto de montagem no apache:
No apache do seu storage você vai clicar em configurações, clicar no diretório conf.d e vai abrir o arquivo 10-shared_headers.conf
URL públic MYSQL
Habilitando Cron
Configurando CRON na SIC
Abrir o apache/lightspeed do ambiente e clicar na pasta a esquerda escrito CRON
Adicionar as linhas de comando abaixo:
* * * * * cd /var/www/webroot/ROOT && php artisan schedule:run >> /dev/null 2>&1
30 * * * * sh /var/www/webroot/ROOT/clear.sh
Ferramentas - Tips & Tricks
-
Sem Rush
- Buscar por keywords mais procuradas, análise de performance de SEO
-
Tome.app (https://tome.app/) - Criaçãode Ebooks
- Criação de ebooks e apresentações através de IA
-
ToolSurf (Ferramentas caras de forma barata)
Venda de ferramentas de forma compartilhada para pagar mais barato
-
Vídeo vault
- Análise de vídeos impulsionados no YouTube
- https://www.videoadvault.com/
- $92 dols / mês
-
Extensão ChatGPT para transcrever qualquer vídeo do YouTube
-
Extensão Coconut - Download de VSL
-
Tubedigger - Windows download VSL
-
Fliki [Inteligência Artificial para criação de VSLs e vídeos]
- https://fliki.ai/
- $28 dols / mês
-
123Apps [Plataforma para edição de vídeos online]
-
Convertio [Plataforma para converter arquivos]
-
Podcast Adobe [Plataforma para tratar o áudio]
-
ElevenLabs [Plataforma para clonagem de voz]
-
Auto Liker Brasil [Comentários e Likes "Reais”]
https://autolikerbrasil.com.br/
O objetivo é gerar engajamento em um publicação existente para rodar ela como dark post
-
ChatMind
Preparar Ambiente para Alta Carga
1. Objetivo
Normalmente, para lançamentos dos nossos clientes é imprescindível que analisemos a infraestrutura dos ambientes envolvidos, para que os mesmos possam aguentar a carga de processamento. Para isso precisamos nos atentar a:
- Limite de cloudlets de cada nodo, para lançamentos deve estar sempre no máximo:
- Limite de utilização de rede:
Em cada ambiente terá um ícone para mostrar as estatísticas, clique para ver.
O Out ext. limit deve estar no máximo, para aguentar o tráfego de rede, o mínimo para lançamentos é de 400MB.
Para aumentar essa configuração entre em contato com a Save In Cloud, passe os nomes dos ambiente e peça para aumentar o limite de banda externa.
2. Balanceamento com múltiplos
O ambiente obrigatoriamente precisa ter um nginx para balancear, após isso adicionamos mais nós de lightspeed/apache, conforme imagem abaixo:.
Após adicionar ou remover nós de apache é importante ajustar o arquivo CRON, acesse o arquivo cron do primeiro nó e deixe em apenas um dos nós o schedule do Laravel.
Nos demais nós, mantenha comentado, ou seja, apenas um dos nós de apache deve gerenciar a fila.
Configuração de Backup de Banco
1. Objetivo
Ao utilizar o Banco de Dados atrelado a Jelastic precisamos configurar uma opção para backup automático.
1. Criar um ambiente separado para armazenamento:
Este ambiente terá apenas uma opção de armazenamento, segue imagem de configuração:
2. Apontar o ambiente de armazenamento como backup
Após criado o ambiente de armazenamento, precisamos apontar nosso backup para ele, para isso devemos ir no ambiente principal do nosso banco de dados, clicar em configurações e ir até a pasta de “backup”, selecione a pasta de backup e clique em configurações, logo em seguida selecione a opção “Montar” (segue imagem de exemplo):
Após clicar em “Montar” selecione o node do ambiente de armazenamento na opção “NFS Server” e em seguida adicione o caminho da pasta para backup na opção “Caminho remoto” por padrão a pasta será “/data” (segue imagem de exemplo):
3. Criar um comando cron para executar o backup
Após os passos anteriores chegamos na fase final de configuração, aqui precisamos criar um comando cron para rodar o dump do Banco de Dados, no servidor do banco clique em configurações, após isso acesse a pasta “cron” e na sequencia clique no arquivo mysql (segue imagem de exemplo):
Dentro do arquivo “mysql” podemos configurar um cron para rodar o backup.
Exemplo de comandos crons:
#0 1 * * * /var/lib/jelastic/bin/backup_script.sh -m dump -c 15 -u USER -p PASSWORD -d db1[,db2,db3....]
#0 2 * * * /var/lib/jelastic/bin/backup_script.sh -m dump -u USER -p PASSWORD -d db -t table1[,table2,table3....]
#0 3 * * * /var/lib/jelastic/bin/backup_script.sh -m dumpall -c 10 -u USER -p PASSWORD
Cron utilizado para o backup do Banco de Dados do Braço Forte:
01 03 * * * /var/lib/jelastic/bin/backup_script.sh -m dump -u USER -p PASSWORD -d bracoforte
Nesse comando ele executa o dump de todas as tabelas do Banco de Dados “bracoforte” ás 03:01 todos os dias.
Nginx - Formas de Balanceamento
Fonte: https://nginx.org/en/docs/http/load_balancing.html
Usando nginx como balanceador de carga HTTP
Introdução
O balanceamento de carga entre várias instâncias de aplicativos é uma técnica comumente usada para otimizar a utilização de recursos, maximizar a taxa de transferência, reduzir a latência e garantir configurações tolerantes a falhas.
É possível usar o nginx como um balanceador de carga HTTP muito eficiente para distribuir tráfego para vários servidores de aplicativos e melhorar o desempenho, a escalabilidade e a confiabilidade de aplicativos da web com o nginx.
Métodos de balanceamento de carga
Os seguintes mecanismos (ou métodos) de balanceamento de carga são suportados no nginx:
- round-robin — as solicitações aos servidores de aplicativos são distribuídas em formato round-robin,
- menos conectado — a próxima solicitação é atribuída ao servidor com o menor número de conexões ativas,
- ip-hash — uma função hash é usada para determinar qual servidor deve ser selecionado para a próxima solicitação (com base no endereço IP do cliente).
Configuração de balanceamento de carga padrão
A configuração mais simples para balanceamento de carga com nginx pode ser parecida com a seguinte:
http {
upstream myapp1 {
servidor srv1.example.com;
servidor srv2.example.com;
servidor srv3.example.com;
}
servidor {
ouvir 80;
localização / {
proxy_pass http://myapp1;
}
}
}
No exemplo acima, há 3 instâncias do mesmo aplicativo em execução em srv1-srv3. Quando o método de balanceamento de carga não é configurado especificamente, o padrão é round-robin. Todas as solicitações são encaminhadas por proxy para o grupo de servidores myapp1, e o nginx aplica o balanceamento de carga HTTP para distribuir as solicitações.
A implementação de proxy reverso no nginx inclui balanceamento de carga para HTTP, HTTPS, FastCGI, uwsgi, SCGI, memcached e gRPC.
Para configurar o balanceamento de carga para HTTPS em vez de HTTP, basta usar “https” como protocolo.
Ao configurar o balanceamento de carga para FastCGI, uwsgi, SCGI, memcached ou gRPC, use as diretivas fastcgi_pass , uwsgi_pass , scgi_pass , memcached_pass e grpc_pass respectivamente.
Balanceamento de carga menos conectado
Outra disciplina de balanceamento de carga é a menos conectada. Essa abordagem permite controlar a carga em instâncias de aplicativos de forma mais justa em situações em que algumas solicitações demoram mais para serem concluídas.
Com o balanceamento de carga menos conectado, o nginx tentará não sobrecarregar um servidor de aplicativos ocupado com solicitações excessivas, distribuindo as novas solicitações para um servidor menos ocupado.
O balanceamento de carga menos conectado no nginx é ativado quando a diretiva least_conn é usada como parte da configuração do grupo de servidores:
upstream myapp1 {
conexão_menor;
servidor srv1.example.com;
servidor srv2.example.com;
servidor srv3.example.com;
}
Persistência de sessão
Observe que, com o balanceamento de carga round-robin ou de menor conexão, cada solicitação de cliente subsequente pode ser potencialmente distribuída para um servidor diferente. Não há garantia de que o mesmo cliente será sempre direcionado para o mesmo servidor.
Se houver necessidade de vincular um cliente a um servidor de aplicativo específico — em outras palavras, tornar a sessão do cliente "fixa" ou "persistente" em termos de sempre tentar selecionar um servidor específico — o mecanismo de balanceamento de carga ip-hash pode ser usado.
Com o ip-hash, o endereço IP do cliente é usado como uma chave de hash para determinar qual servidor em um grupo de servidores deve ser selecionado para as solicitações do cliente. Este método garante que as solicitações do mesmo cliente sejam sempre direcionadas ao mesmo servidor, exceto quando este estiver indisponível.
Para configurar o balanceamento de carga ip-hash, basta adicionar a diretiva ip_hash à configuração do grupo do servidor (upstream):
upstream myapp1 {
ip_hash;
servidor srv1.example.com;
servidor srv2.example.com;
servidor srv3.example.com;
}
Balanceamento de carga ponderado
Também é possível influenciar ainda mais os algoritmos de balanceamento de carga do nginx usando pesos de servidor.
Nos exemplos acima, os pesos do servidor não são configurados, o que significa que todos os servidores especificados são tratados como igualmente qualificados para um método específico de balanceamento de carga.
Com o round-robin em particular, isso também significa uma distribuição mais ou menos igual de solicitações entre os servidores — desde que haja solicitações suficientes e quando as solicitações sejam processadas de maneira uniforme e concluídas com rapidez suficiente.
Quando o parâmetro de peso é especificado para um servidor, o peso é contabilizado como parte da decisão de balanceamento de carga.
upstream myapp1 {
servidor srv1.example.com peso=3;
servidor srv2.example.com;
servidor srv3.example.com;
}
Com essa configuração, a cada 5 novas solicitações serão distribuídas entre as instâncias do aplicativo da seguinte maneira: 3 solicitações serão direcionadas para srv1, uma solicitação irá para srv2 e outra para srv3.
Da mesma forma, é possível usar pesos com balanceamento de carga menos conectado e ip-hash nas versões recentes do nginx.
Verificações de saúde
A implementação de proxy reverso no nginx inclui verificações de integridade do servidor em banda (ou passivas). Se a resposta de um servidor específico falhar com um erro, o nginx marcará esse servidor como falho e tentará evitar a seleção deste servidor para solicitações de entrada subsequentes por um tempo.
A diretiva max_fails define o número de tentativas consecutivas malsucedidas de comunicação com o servidor que devem ocorrer durante o fail_timeout . Por padrão, max_fails é definido como 1. Quando definido como 0, as verificações de integridade são desativadas para este servidor. O parâmetro fail_timeout também define por quanto tempo o servidor será marcado como com falha. Após o intervalo fail_timeout após a falha do servidor, o nginx começará a sondar o servidor normalmente com as solicitações do cliente ativo. Se as sondagens forem bem-sucedidas, o servidor será marcado como ativo.
Leitura adicional
Além disso, existem mais diretivas e parâmetros que controlam o balanceamento de carga do servidor no nginx, como proxy_next_upstream , backup , down e keepalive . Para mais informações, consulte nossa documentação de referência .
Por último, mas não menos importante, o balanceamento de carga de aplicativos, as verificações de integridade dos aplicativos, o monitoramento de atividades e a reconfiguração dinâmica de grupos de servidores estão disponíveis como parte de nossas assinaturas pagas do NGINX Plus.
Guia Completo: Criação de Conta SIC e Configuração de Ambiente do Zero
Documentação:
https://wiki.edustore.online/books/save-in-cloud
Videos Complementares:
Ambiente Principal Parte 1 : https://www.youtube.com/watch?v=JQhrZJxuqrE&ab_channel=EduStore-PlataformaPremiumparaCursosOnline
Ambiente Principal Parte 2 :https://www.youtube.com/watch?v=ggunGuD2VI8
Ambiente Storage: https://www.youtube.com/watch?v=m08mbwIvXWg
Esta documentação é um guia completo para a criação de uma nova conta SIC, cobrindo todas as etapas necessárias para a configuração integral do ambiente. Acima, você encontrará materiais de apoio — como documentações e vídeos complementares — que podem ser utilizados como referência caso surjam dúvidas durante o processo de instalação.
Criando uma Conta SIC
Para começar, é necessário criar uma conta na SIC. Clique no link abaixo e siga as instruções para concluir o processo de cadastro.
https://register.saveincloud.com/geral/site
Observação: O ideal é utilizar o seguinte padrão de e-mail para o cadastro:
cliente_novo@edustore.online. Vale lembrar que, durante a ativação via SMS, será necessário um número de celular ativo e acessível do próprio cliente para receber o código de verificação.
Acesso Inicial ao SIC e Ativação da Conta Paga
Com a conta já criada, acesse o link abaixo utilizando o e-mail e a senha cadastrados. Em seguida, clique em "Entrar" para acessar o ambiente.
https://app.jelastic.saveincloud.net/
Antes de iniciar a configuração do ambiente, é necessário que o colaborador realize a compra de um crédito inicial no valor aproximado de R$150 a R$200.
Para isso, clique na opção "Assinar o Cloud", localizada na parte superior da tela. Esse processo irá direcionar para o cadastro e aquisição dos créditos necessários.
Consulte a imagem abaixo para facilitar a identificação do botão.
Após a conclusão do cadastro, o botão "Assinar o Cloud" será substituído por "Saldo", na mesma posição anterior.
Clique em "Saldo", depois em "Comprar saldo", selecione o valor desejado (entre R$150 e R$200, conforme citado acima) e escolha a forma de pagamento PIX.
⚠️ Atenção: Dependendo do cliente, o método de pagamento disponível pode variar.
Criando o primeiro ambiente
Para criar o primeiro ambiente, vá até a parte superior da tela e clique em "Novo Ambiente". Ao fazer isso, será exibida uma tela semelhante a uma das imagens demonstradas abaixo.
Importante: Caso surja alguma dúvida durante o processo de criação do ambiente, consulte os vídeos complementares localizados acima nesta documentação — especialmente os vídeos "Ambiente Principal – Parte 1" e "Parte 2".
Aqui está o fluxograma que serve de guia para a configuração, e alguns pontos importantes:
-
Disco: 100 GB;
-
Cloudlets: 8 GB (mínimo) até 10 GB (máximo);
- Nome do ambiente padrão: prod-painel-sala-novocliente (letras minúsculas separadas pelo traço);
-
O IP público precisa ser acrescentado ao LiteSpeed para que o roteamento funcione corretamente;
-
Redis deve ser utilizado para sessões, filas e cache, não como banco de dados principal sendo opcional para alguns demandas muito baixa.
IMPORTANTE:
"Atualizamos o ambiente para PHP 8.3 (anteriormente 8.1). As imagens existentes são antigas, então considere que qualquer referência à versão 8.1 agora corresponde à 8.3."
⚠️ Observação: Este fluxograma representa um modelo padrão recomendado para ambientes de baixa demanda.
Para cenários mais robustos ou com alto tráfego, os valores de recursos podem variar — consulte a documentação técnica ou entre em contato com o suporte para orientações específicas.A inclusão do Redis é opcional e pode ser omitida em ambientes com demanda extremamente baixa, onde o uso de cache in-memory não é essencial.
Imagens de como deve ficar a configuração:
PHP-NGIX-NOME
LITESPEED
MYSQL
REDIS
Após concluir as configurações conforme mencionado, clique em "Criar" e aguarde alguns minutos.
Após a conclusão da criação do ambiente, serão enviados por e-mail os detalhes relacionados à configuração e acesso de cada serviço, incluindo:
-
NGINX
-
LiteSpeed
-
MySQL
-
Redis
Esses e-mails contêm informações essenciais, como URLs de acesso, credenciais, portas e IPs, sendo fundamentais para o gerenciamento do ambiente.
O ambiente será provisionado automaticamente e, ao finalizar, terá uma aparência semelhante ao exemplo mostrado abaixo.
Liberando Sudo su & Installando PHP-Redis
Precisa entrar entrar contato com o pessoal da SIC para fazer a liberação do modo su do ambiente. A partir da liberação do ambiente, siga esses passos:
- Verificar se o ambiente possui redis:
/usr/local/lsws/lsphp83/bin/php --ri redis | head -n 20
- Caso não houver redis, fazer essas verificações:
/usr/local/lsws/lsphp83/bin/php --ini | grep -i "20-redis.ini" || echo "NAO esta carregando 20-redis.ini"
echo "extension=redis.so" > /usr/local/lsws/lsphp83/etc/php.d/20-redis.ini/usr/local/lsws/lsphp83/bin/php --ri redis | head -n 20
- Agora quando aparecer o redis verificar a versão, ela tem que ser >= a versão 6.1
- Se for menor, no terminal digitar sudo su para entrar em modo administrador, e então rodar esse comando:
/usr/local/lsws/lsphp83/bin/pecl uninstall redis
- Quando desinstalar basta, digitar no terminal esse comando:
/usr/local/lsws/lsphp83/bin/pecl install redis-6.1.0
- Verificar se está >= 6.1: /usr/local/lsws/lsphp83/bin/php --ri redis | head -n 20
Apontando o Domínio para o Ambiente SIC
Para concluir a ativação do ambiente SIC, é necessário configurar os domínios personalizados do cliente e realizar os apontamentos DNS corretamente.
Solicite ao cliente o domínio principal que será utilizado (ex: seudominio.com.br).
Caso o domínio ainda não esteja registrado, oriente o cliente a registrar em serviços como Registro.br, GoDaddy, HostGator, etc.
Aponte o cliente (ou acesse com autorização) ao painel de gerenciamento DNS, que pode variar conforme o provedor (Cloudflare, Registro.br, GoDaddy, etc.).
Pegando o ip publico da NGIX:
⚠️ Importante: Cada painel pode ter uma interface diferente, mas os registros seguem os mesmos padrões.
Adicione os seguintes registros do tipo A, apontando para o IP público do ambiente (NGINX):
| Subdomínio | Tipo | Valor (apontar para) |
|---|---|---|
cdn.seudominio.com.br |
A | Verificar no ambiente storage. |
painel.seudominio.com.br |
A | IP público do servidor (NGIX) |
sala.seudominio.com.br |
A | IP público do servidor (NGIX) |
Compartilhamento de ambientes e Git
Para centralizar e organizar os ambientes na conta principal da Edustore, compartilhe o ambiente com o e-mail: contato@edustore.online
Passo a passo:
-
Acesse Configurações → Colaboração → Compartilhado por mim
-
Clique em Convidar
-
Informe o e-mail contato@edustore.online
-
Marque a opção /admin (todos os ambientes)
Integração com Git no LiteSpeed
Para facilitar a integração com o repositório GitLab e centralizar os ambientes, é recomendado compartilhar o ambiente com a conta principal da Edustore: contato@edustore.online
Isso permite acessar rapidamente os repositórios Git já configurados nessa conta, agilizando a vinculação e a configuração do deploy.
Para vincular o repositório Git ao ambiente LiteSpeed:
-
Vá em Implementação → Implementar via Git
-
Configure o repositório e branch conforme necessário
-
Após a publicação, defina o comando pós-deploy:
Importante: Esse comando garante que as dependências PHP do projeto sejam instaladas automaticamente após o deploy.
Configurações no LiteSpeed
Configurações no LiteSpeed
Adicionando Pastas e Arquivos aos Favoritos
Ao acessar o LiteSpeed, vá até a aba Configurações e localize as pastas e arquivos principais do ambiente, conforme mostrado na imagem acima.
Para facilitar o acesso no dia a dia:
-
Clique com o botão esquerdo sobre a pasta ou arquivo desejado.
-
No menu exibido, clique em "Adicionar aos Favoritos".
✅ Recomendamos adicionar os seguintes itens:
-
ROOT -
.env -
storage -
logs
Ajustes no php.ini
No mesmo ambiente LiteSpeed, acesse o arquivo php.ini e habilite as seguintes extensões necessárias para o funcionamento correto da aplicação:
Ainda no php.ini, ajuste os seguintes parâmetros para garantir melhor desempenho e suporte a arquivos grandes:
Verificando email e configurações diretas
Após criar os ambientes, recebemos e-mails para concluir a configuração. Acesse o e-mail usado no cadastro da SIC e procure a mensagem do LiteSpeed para finalizar o processo.
CAIXA DE ENTRADA DO SEU EMAIL DE CADASTRO:
CONTEÚDO DO EMAIL DO LITESPEED
Depois disso, acesse o sistema pela URL de Acesso enviado no e-mail, utilizando seu login e senha.
Em seguida, você será direcionado para a tela abaixo:
Dentro das configurações do servidor LiteSpeed, vamos ajustar dois pontos importantes:
-
Caminho para o WebSocket
-
Caminho da pasta pública do projeto
1) Caminho do WebSocket
Acesse:
Configuration > Virtual Hosts
Em seguida:
-
Clique em View/Edit no Virtual Host desejado.
-
Vá até a aba General.
-
Ao final da página, localize a seção WEB SOCKET PROXY SETUP e clique em Edit.
Nessa configuração, os campos devem ficar exatamente como mostrado na imagem abaixo, ou seja, utilizando a mesma URI e o mesmo Address.
Obs: Ainda é necessária fazer mais outra configuração para o websocket funcionar corretamente, será mostrada mais a frente.
2) Caminho pasta publica
Acesse:
Configuration > Virtual Hosts
Em seguida:
Após salvar, será exibida na parte superior uma mensagem com um link “Graceful Restart”.
Clique nesse link e aguarde alguns instantes até aparecer a mensagem de confirmação.
Feito isso, a configuração no LiteSpeed estará concluída.
Configuração de tamanho de request LiteSpeed
Add-Ons (Nginx e LiteSpeed)
No Nginx, vamos instalar os add-ons necessários.
O principal deles é o “Let’s Encrypt Free SSL”.
Ao configurar o SSL:
-
Informe os domínios que irão responder pelo painel, sala e vitrine
-
Separe cada domínio com
;(ponto e vírgula), com exceção do último
Depois de preencher, basta aplicar a configuração e aguardar alguns minutos até que o certificado seja gerado e tudo esteja ativo.
Siga o mesmo caminho, porem agora no LiteSpeed.
No LiteSpeed, vamos instalar os add-ons necessários.
O principal deles é o “LiteSpeed License Manager”.
Obs: Essa configuração antes de ser realizada, deve ser verificada mediante a equipe, pois podem envolver custos.
Criando o Storage
A seguir está o link com o passo a passo completo de como configurar o storage e o seu ponto de montagem.
https://wiki.edustore.online/books/documentacao-tecnica/page/criacao-de-storage
Conclusão do Ambiente
Da mesma forma que você recebeu um e-mail com os dados do LiteSpeed, também será enviado outro e-mail com as informações do SQL.
Em seguida, acesse Configurações do ambiente > Endpoints:
- Clique em Adicionar;
-
Selecione o node de SQL.
-
Defina o Nome e a Porta como:
-
Tipo: MySQL
-
Porta: 3306 (padrão do SQL)
-
Após salvar, será gerada uma porta pública, que aparecerá em tela de forma similar ao exemplo abaixo.
-
Crie uma nova conexão MySQL, conforme o modelo da imagem.
-
Preencha os campos utilizando os dados recebidos do servidor (host, usuário, senha e porta pública do MySQL).
-
Após preencher tudo, clique em Testar Conexão e verifique se a conexão foi estabelecida com sucesso.
Após isso, clique com o botão direito do mouse sobre a conexão e selecione “New Database”.
Informe um nome para o banco de dados e clique em OK.
Lembre-se de usar nomes relacionados ao cliente, seguindo o mesmo padrão dos bancos que já estão sendo utilizados como exemplo.
Configuração .env
No LiteSpeed, acesse Configurações > .env.
A partir daqui, vamos ajustar as variáveis de ambiente necessárias para rodar as migrations do projeto corretamente.
Configure o arquivo .env desta forma (substituindo os campos entre parênteses pelos dados do seu ambiente):
APP_DEBUG=false
APP_URL=https://sala.seudominio.com.br # sala
URL_SITE="seudominio.com.br" # vitrine
URL_MATRIX="painel.seudominio.com.br" # painel
DB_CONNECTION=mysql
DB_PORT=3306
DB_HOST=(conforme o e-mail do banco)
DB_DATABASE=(nome do database criado no Navicat)
DB_USERNAME=(usuário enviado no e-mail)
DB_PASSWORD=(senha enviada no e-mail)
FILESYSTEM_DRIVER=ftp
FTP_HOST="(conforme storage)"
FTP_USERNAME="(conforme storage)"
FTP_PASSWORD="(conforme storage)"
FTP_PORT=21
FTP_URL="https://(conforme storage, subdomínio CDN)"
Caso existam outras configurações no
.env, verifique com a equipe antes de alterar.
Em seguida, acesse o Web SSH do LiteSpeed.
cd /var/www/webroot/ROOT
E execute o comando:
php artisan migrate
Se der erro na primeira vez, você pode rodar o comando novamente, pois muitas vezes a migration é concluída corretamente na segunda tentativa.
Finalizando Websocket
Agora vamos finalizar a configuração do WebSocket.
No painel, acesse:
LiteSpeed → Cron → LiteSpeed
Em seguida, cole o comando abaixo:
# IMPORTANT NOTE!
# Please make sure there is a blank line after the last cronjob entry.
* * * * * cd /var/www/webroot/ROOT && php artisan schedule:run >> /dev/null 2>&1
Agora, após concluir todos os passos, você já pode testar o acesso em:
-
https://painel.seudominio.com.br -
https://sala.seudominio.com.br
Se ambos abrirem normalmente, sem erros, significa que o ambiente foi configurado com sucesso e o processo está finalizado.
Rodando Seeds & Migrations
No .env configure as chaves de login social:
FB_ID=414578407312542
FB_SECRET=f25ab006f5a69d9fa9f1b375b51150cf
GOOGLE_SECRET=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
GOOGLE_ID=861561782343-m3j5oin7toha588n903ncofh9ver9bmh.apps.googleusercontent.com
LINKEDIN_CLIENT_ID=77ppfdd8dc7i6l
LINKEDIN_CLIENT_SECRET=6eFq4JCazURpH3C3
Após isso, caso o cliente utilize cache com o Redis, configure o CACHE_DRIVER = redis e o configure as chaves de acesso do redis: REDIS_HOST="****.saveincloud.net.br" e REDIS_PASSWORD="****"
Acesse o ambiente via WebSSH e acesso o diretório: cd /var/www/webroot/ROOT/, nele execute os seguintes comandos:
-
- composer.install (nesse caso vai dar erro, mas terá instalado os pacotes)
- php artisan migrate
- php artisan db:seed
Feito, base criada, dados configurados, tudo pronto!
Configurações iniciais no painel
Em outros->configurações, temos que adicionar essa configuração.