Tutorial completo sobre como instalar o mecanismo de busca Meilisearch e integrá-lo ao WordPress usando o HestiaCP.

Na semana passada, uma mulher bonita falou sobre ela.WordPressA busca no site está muito lenta e os resultados da busca por "tutorial" em chinês estão todos bagunçados. Gostaria de ajudar a corrigir isso.

Achei que fosse simples: bastava mudar para um mecanismo de busca diferente. O Meilisearch é o mecanismo de busca de código aberto mais popular no momento, sua segmentação de palavras em chinês é absurdamente eficiente e seu desempenho é ótimo. É só instalar e pronto, certo?

resultado...

Eu estava no deleHestia CPPassei um dia inteiro mexendo no servidor do painel de controle. Erros de permissão, serviços que não iniciavam, erro 502 Bad Gateway — encontrei todos esses problemas clássicos.

Para ser sincero, no início eu não tinha certeza se funcionaria, mas olhando para trás, depois de todo o esforço, percebi que envolvia apenas alguns pontos-chave e, uma vez compreendidos, era bastante simples. Hoje estou compartilhando essa solução; se você também usa HestiaCP + WordPress, basta acompanhar.

A busca do WordPress é muito difícil de usar, então decidi mudar para ele.

Quem já usou o WordPress sabe o quão difícil é a função de busca integrada.

É o tipo de resultado de pesquisa que você obtém quando pesquisa por "AIA busca pelo termo "tutoriais" retorna uma série de artigos contendo "IA" ou "tutoriais", mas são completamente irrelevantes. Buscar por "instalação do HestiaCP" traz uma tonelada de resultados irrelevantes com a palavra "instalação". A experiência do usuário é péssima; cada busca parece uma loteria.

Tutorial completo sobre como instalar o mecanismo de busca Meilisearch e integrá-lo ao WordPress usando o HestiaCP.

O Meilisearch é completamente diferente. Ele oferece suporte à segmentação de palavras em chinês, entende o que você está procurando e tem um desempenho incrivelmente alto, com tempos de resposta na ordem de milissegundos. Fundamentalmente, é de código aberto e gratuito; você o implementa por conta própria e seus dados ficam totalmente sob seu controle.

O problema é que, embora os tutoriais oficiais sejam gerais, o painel do HestiaCP é um tanto peculiar. Ele possui um controle de acesso rigoroso e sua configuração do Nginx segue regras específicas; seguir diretamente a documentação oficial provavelmente levará a problemas.

Eu errei.

Guia de Solução de Problemas para Instalar o Meilisearch no HestiaCP

Na primeira vez que instalei, usei o script oficial de um clique, apenas um comando curl rápido e pronto. Mas o serviço não iniciava, exibindo um erro de "Permissão negada".

Percebi que algo estava errado; eu estava usando acesso root. Então descobri que o arquivo binário baixado não tinha permissões de execução. O ambiente do HestiaCP é ligeiramente diferente do Debian padrão, e as permissões de caminho também são restritas.

Depois de todo esse trabalho, o serviço estava funcionando, mas quando tentei usar o curl na porta local, recebi um erro 502 Bad Gateway.

Isso é uma grande armadilha. A configuração do Nginx no HestiaCP tem seu próprio método de gerenciamento; você não pode simplesmente modificar um arquivo de configuração manualmente. É preciso usar o painel de controle para gerenciá-lo ou acessar manualmente os arquivos de configuração gerados. Inicialmente, não entendi isso e passei por várias tentativas e erros.

Depois de finalmente entender tudo, elaborei um plano, comecei do zero e terminei em dez minutos.

Método de instalação padrão do Meilisearch (somente HestiaCP)

Observe que minha solução foi projetada especificamente para o HestiaCP e difere do tutorial oficial, porém é mais estável.

Primeiro, atualize as dependências do sistema; não há muito o que dizer sobre isso.

apt update && apt install curl wget -y

Em seguida, o passo crucial é excluir quaisquer arquivos residuais que possam ter permanecido. Se você já instalou o programa antes, com sucesso ou não, podem existir arquivos com permissões anormais. Não hesite, exclua-os diretamente.

rm -f /usr/local/bin/meilisearch

Muitas pessoas ignoram esta etapa, mas acredite, ela é uma das principais causas de erros 502. Em ambientes HestiaCP, as permissões do caminho /usr/local/bin são um tanto imprevisíveis; excluí-lo e começar do zero é a solução mais adequada.

Em seguida, instale-o com um clique a partir do site oficial.

curl -L https://install.meilisearch.com | sh

Após a instalação, não inicie o programa imediatamente. Primeiro, mova o arquivo binário para um local seguro.

mv meilisearch /usr/bin/
chmod +x /usr/bin/meilisearch

Esta etapa é crucial. /usr/bin é o diretório padrão de arquivos executáveis ​​do sistema, com um gerenciamento de permissões mais padronizado, evitando aqueles problemas estranhos de permissão.

Em seguida, crie o diretório de dados.

mkdir -p /var/lib/meilisearch

Em seguida, configure o serviço systemd para iniciar automaticamente na inicialização do sistema. Crie um arquivo de serviço.

nano /etc/systemd/system/meilisearch.service

Cole a seguinte configuração no arquivo.

[Unit]
Description=Meilisearch Search Engine
After=network.target

[Service]
Type=simple
User=root
Group=root
ExecStart=/usr/bin/meilisearch \
    --env production \
    --http-addr 127.0.0.1:7700 \
    --db-path /var/lib/meilisearch \
    --master-key 1234567890123456

Restart=always
RestartSec=5

[Install]
WantedBy=multi-user.target

Observe alguns pontos. O endereço HTTP está vinculado a 127.0.0.1:7700, o que significa que ele só escuta localmente e é inacessível da rede externa; esta é a abordagem mais segura. A chave mestra deve ter pelo menos 16 caracteres; não use meu exemplo, crie a sua própria chave complexa.

Após salvar e sair, recarregue a configuração e inicie o serviço.

systemctl daemon-reload
systemctl enable meilisearch
systemctl restart meilisearch

Em seguida, teste.

curl http://127.0.0.1:7700/health

Se devolvido{"status":"available"}Parabéns, você conseguiu!

Ao ver o sinal de retorno, soltei um enorme suspiro de alívio. Depois de um dia inteiro de dificuldades, finalmente estava correndo novamente.

Método de configuração do WordPress para integração com o Meilisearch

Este passo é simples. Acesse o painel administrativo do WordPress e instale um plugin chamado Scry Search. É gratuito, então basta usá-lo.

Após a instalação, acesse as configurações e preencha três campos.

Endereço Meilisearch:http://127.0.0.1:7700

Chave da API: Esta é a chave mestra que você acabou de configurar.

Nome do índice: Dê um nome ao seu site, como "blog".

Em seguida, clique em "Iniciar Indexação Completa", aguarde a conclusão e a pesquisa em primeiro plano assumirá o controle automaticamente. Não são necessárias alterações no código do tema nem na configuração; está pronto para usar imediatamente.

Eu testei; a busca por "HestiaCP" retornou uma correspondência exata, e a busca por "Instalação do Meilisearch" apresentou o mesmo resultado. A segmentação de palavras em chinês é incrivelmente precisa, com tempos de resposta na ordem de milissegundos.

Isso é muito bom.

Vários sites WordPress compartilhando o Meilisearch no mesmo servidor.

Vale mencionar que muitas pessoas podem ter mais de um site WordPress no mesmo servidor.

Não há absolutamente nenhuma necessidade de reinstalar o Meilisearch. O serviço que você já tem instalado pode ser usado por todos os sites no mesmo servidor.

O princípio é simples: como o serviço está vinculado ao endereço 127.0.0.1, a comunicação é local e ainda mais rápida.

Basta preencher o mesmo endereço e chave na configuração do plugin para cada site, mas o nome do índice será diferente.

Por exemplo, o primeiro índice do site se chama "blog" e o segundo se chama "ufoO terceiro se chama "loja". Cada site tem seu próprio índice, que não interfere nos outros, mas eles compartilham o mesmo serviço de busca.

É simples assim.

Otimização da Segurança do Ambiente de Produção da Meilisearch

Há alguns pontos a serem observados.

Primeiro, não use uma chave mestra simples. Ela deve ter pelo menos 16 caracteres, com uma combinação de letras e números, e não deve ser igual à de outra pessoa.

Em segundo lugar, o serviço só escuta na porta 127.0.0.1, tornando-o inacessível a partir da rede externa. Isso é crucial e muitas pessoas ignoram esse detalhe. Você pode achar que o ocultou bem, mas expor a porta é um risco.

Em terceiro lugar, para ambientes de produção, recomenda-se fornecer uma chave de pesquisa somente leitura.Plugin WPUse você mesmo, mas guarde a chave mestra para evitar vazamentos.

Se todos esses pontos forem abordados, não deverá haver grandes problemas de segurança.

Soluções para erros comuns encontrados ao instalar o Meilisearch usando o HestiaCP.

Vamos resumir algumas das perguntas mais comuns.

Permissão negada

O problema é que as permissões do arquivo binário estão incorretas ou o caminho está errado. A solução é a que mencionei acima: exclua-o e reinstale-o no diretório /usr/bin usando o comando chmod +x.

502 Bad Gateway

O serviço Meilisearch pode não estar em execução ou pode não estar escutando na porta local. Você pode verificar a porta local usando o curl para descobrir. Se o serviço estiver funcionando, mas você ainda estiver recebendo um erro 502, pode ser um problema com a configuração do Nginx no HestiaCP; tente reconstruir a configuração do site.

O WordPress não consegue se conectar ao serviço.

Verifique três coisas: O endereço 127.0.0.1 está sendo usado? A chave está correta? O serviço está em execução?

Basicamente, existem apenas algumas armadilhas; uma vez que você as entenda, tudo fica bastante simples.

Por fim, gostaria de dizer mais uma coisa.

Sinceramente, sempre achei que a função de busca é subestimada.

Muitas pessoas investem muito dinheiro na criação de sites e conteúdo, mas a experiência de busca é péssima. Os usuários acessam o site para procurar algo, não encontram o que desejam e saem imediatamente. Não importa a qualidade do conteúdo, se a função de busca for ruim, todo o esforço será em vão.

Implantar uma ferramenta como o Meilisearch não é realmente difícil, mas muitas pessoas desistem devido aos problemas de permissão e configuração. Dediquei um dia inteiro a isso para eliminar completamente essa barreira, para que outros possam começar a usar facilmente.

Imagine só: um mecanismo de busca de alto desempenho, de código aberto, gratuito, com excelente suporte ao idioma chinês e seguro. Algo que jamais ousamos sequer sonhar.

O ecossistema de código aberto está ficando cada vez mais forte. Muitos serviços que antes exigiam muito dinheiro para comprar agora podem ser desenvolvidos por nós mesmos. É uma sensação realmente ótima.

Se você também usa HestiaCP + WordPress e está com problemas de busca, experimente esta solução. Leva apenas dez minutos, sério.

Já que você leu até aqui, se achou útil, curta e compartilhe. Se quiser receber atualizações em primeira mão, você também pode me seguir!

Obrigado por ler meu artigo. Até a próxima!

发表 评论

Seu endereço de e-mail não será publicado. 必填 项 已 用 * 标注

Voltar ao Topo