PHP Microsty Boilerplate
O PHP Microst Boilerplate é uma estrutura PHP para criar sites simples, mas fortemente funcionais, rápidos e seguros em basicamente todo ambiente.
A maioria das estruturas e até as placas de caldeira requer um processo de configuração exaustivo, onde você precisa instalar várias dependências. Isso leva a uma enorme sobrecarga de código, que você geralmente não precisa. Toda essas complexidade também é um risco potencial para o seu site. Além disso, muitas vezes não é possível usar a maioria das soluções, se você precisar implantá -lo no plano de hospedagem compartilhado mais barato.
Este projeto deseja fornecer uma estrutura e modelo para este caso exato:
- Você precisa criar um site bastante pequeno, com alguma funcionalidade.
- Você escolhe PHP, porque deseja fazer scripts do lado do servidor, enquanto o PHP também é talvez o único idioma, que é executado em basicamente todas as opções de hospedagem.
- Você constrói essa coisa por conta própria ou com um máximo de 1 outra pessoa, o que torna as melhores práticas, mas a estrutura complexa da estrutura de um sobrecarga desnecessária do que um conceito útil.
- Você precisa fazê -lo rapidamente, enquanto não deseja fazer compromissos em relação à segurança ou desempenho.
- Portanto, você não se importa muito com o código limpo;).
Demonsro
Principais recursos
- Roteamento fácil.
- App Progressive Web (PWA) preparado.
- Multilanguage preparada.
- Integração do Directus CMS (incl. Cache local).
- Docker compor para o desenvolvimento local.
- Tailwindcss incluído (opcional).
- GDPR e CCPA prontos.
- Cache inteligente do serviço de serviço.
- Suporte getText para facilitar a tradução (+ fallback se não estiver instalado no servidor).
- SEO otimizado.
- Geração automatizada de mapa do site.
- Otimizado para compartilhamento social.
- Integração do YouTube, otimizada em velocidade e GDPR.
- Otimização opcional de CSS e JavaScript com scripts de construção preparados.
- Extensa documentação no código.
- Cabeçalhos de segurança (.htaccess ou via php)
- Vários recursos de segurança (a maioria deles exige um servidor Apache!)
- Preparado para executar a implantação do Git.
- Desenvolvido para tornar extremamente fácil remover os recursos ou adicionar suas próprias coisas.
Uso
Faça o download da respectiva ramificação/tag e envie -a para a pasta do seu site - ou clone o repo como quiser.
Ajuste -o ao seu projeto:
- Verifique o arquivo .htaccess, se você o executar no Apache. Cuidado com os cabeçalhos e lugares de segurança, onde um domínio/caminho é especificado (procure yourDomain.com).
- Se você não o executar no Apache, verifique o index.php para obter a configuração dos cabeçalhos de segurança e verifique se todas as solicitações (exceto arquivos) são enviadas para o index.php. Verifique o nginx_deployment.sh - é um script de bash pré -configurado para configurar seu servidor da web nginx.
- Ajuste os valores no config.php e também arquivos mentais, mencionados nos comentários lá. Configure uma conexão com o seu Directus CMS, se usado.
- Verifique /templates/general_meta.php e crie os respectivos favicons.
- Defina suas páginas no roteing.php. (Mente aviso legal e política de privacidade para permanecer em conformidade com o GDPR!)
- Crie essas páginas (conforme especificado antes) como arquivos PHP únicos dentro /páginas.
- Crie os respectivos arquivos dentro /controlador, se necessário, no seu caso.
- Verifique a opção de redirecionamento automático dentro de múltiplas linguagens em index.php e base.js.
- Crie o site com essas páginas, o style.css e o base.js. Lembre -se de minimizar esses arquivos ou ajustar a maneira como eles são incluídos em /templates/header.php e /templates/footer.php. Se você usar o script de construção preparado, não precisará se preocupar com esta parte.
- Ajuste o rodapé em /templates/footer.php às suas necessidades.
- Encontre mais detalhes na documentação no código - é um playground bem documentado!
É basicamente isso em relação a ajustes. Você pode encontrar um guia de configuração de amostra mais detalhado na postagem do blog médio correspondente aqui.
Construir o projeto, dificilmente depende da sua configuração! Se você estiver usando a integração do TailWindcss, precisará usar o script de construção incluído, que requer nodejs! Se você está ficando simples, pode pular nisso. No entanto, não usar os scripts de compilação também não mesclará e minifia os arquivos CSS e JS. Portanto, se possível, para você, dificilmente é recomendado. Para construção:
- Verifique se você está dentro do diretório raiz do projeto com seu terminal.
- Execute
npm install . - Execute
npm run build para deixar a mágica acontecer. - É isso. Sinta -se à vontade para fazer isso manualmente em sua máquina local e enviá -la para o seu host - ou use alguns dutos de construção em qualquer ferramenta que você estiver usando.
BTW: Recomenda -se usar um serviço CDN (por exemplo, Cloudflare) para acelerar ainda mais.
Configuração de desenvolvimento local
Para o desenvolvimento local, você pode usar o Docker-Compose.yml incluído
- Atualize o nome do contêiner no arquivo YML.
- Faça o download e instale o Docker Desktop.
- Ajuste o
$the_page_url no config.php temporariamente para "/". - Execute
docker-compose up -d no terminal no diretório raiz do projeto. - Abra o projeto no
localhost:80 (lembre -se de que você pode ver um erro SSL - não deve ser bloqueador), - Codificação e teste felizes.
Contribuindo
Qualquer um é bem -vindo a contribuir, mas lembre -se das diretrizes:
- Relatórios de bug
- Solicitações de recursos
- Puxar solicitações
Licença
O código está disponível sob a licença GPL 3.0. Você pode basicamente fazer qualquer coisa com isso, mas lembre -se de que, se deseja distribuir seu trabalho com base nesse código, seu trabalho também precisa ser licenciado pela GPL. Isso significa que você pode criar seu site facilmente, pois isso não é distribuição. A distribuição seria o caso, se você vender um projeto com base nesse código para outras pessoas ou se criar projetos públicos (não importa se você os vende ou não). Mesmo tudo isso seria bom, desde que você licencie esses projetos também com a GPL. :) Verifique o arquivo de licença para obter todos os detalhes.
Inspirado por
Este código foi inspirado no placa de caldeira HTML5.