63 lines
3.1 KiB
Markdown
63 lines
3.1 KiB
Markdown
# Catálogo de Cestas - beni cestas
|
|
|
|
Este é um projeto de site de catálogo de cestas e presentes desenvolvido em PHP puro, com estrutura MVC-like, pronto para ser implantado em servidores de hospedagem como o InfinityFree.
|
|
|
|
## Estrutura de Pastas
|
|
|
|
```
|
|
/
|
|
├─ /app (Lógica da aplicação, fora da raiz pública)
|
|
│ ├─ /Controllers
|
|
│ ├─ /Models
|
|
│ └─ /Views
|
|
├─ /config (Configuração, fora da raiz pública)
|
|
├─ /database (Schema e seeds do banco de dados)
|
|
├─ /public_html (Raiz pública do site, o que vai para a pasta htdocs)
|
|
│ ├─ index.php (Front-controller)
|
|
│ ├─ .htaccess
|
|
│ ├─ /assets (CSS, JS, Imagens)
|
|
│ └─ /uploads (Imagens dos produtos)
|
|
├─ /scripts (Scripts de utilidade)
|
|
└─ README.md
|
|
```
|
|
|
|
## Requisitos
|
|
|
|
* PHP 8.x
|
|
* MySQL / MariaDB
|
|
* Servidor web com suporte a `mod_rewrite` (Apache)
|
|
|
|
## Instruções de Deploy no InfinityFree
|
|
|
|
1. **Crie sua conta:** Acesse [InfinityFree.net](https://www.infinityfree.net/) e crie uma nova conta de hospedagem.
|
|
2. **Crie o Banco de Dados:**
|
|
* No painel de controle (cPanel), vá para a seção "MySQL Databases".
|
|
* Crie um novo banco de dados. Anote o nome do banco de dados (`if0_..._dbname`), o nome de usuário (`if0_...`) e a senha. O host do banco de dados (`sqlXXX.epizy.com`) também será exibido.
|
|
3. **Configure o projeto:**
|
|
* Abra o arquivo `config/config.php`.
|
|
* Altere os valores de `DB_HOST`, `DB_NAME`, `DB_USER`, e `DB_PASS` com as credenciais que você anotou no passo anterior.
|
|
* Altere o `BASE_URL` para a URL do seu site no InfinityFree (ex: `http://seusite.epizy.com`).
|
|
4. **Faça o Upload dos Arquivos:**
|
|
* Use um cliente FTP como o FileZilla para se conectar ao seu servidor InfinityFree (as credenciais de FTP estão no painel de controle).
|
|
* **IMPORTANTE:** Envie o **conteúdo** da pasta `public_html` do projeto para a pasta `htdocs` no seu servidor.
|
|
* Envie as pastas `app`, `config`, e `vendor` (se existir) para a raiz do seu servidor (fora da pasta `htdocs`). O InfinityFree permite criar diretórios fora de `htdocs`, o que é mais seguro.
|
|
5. **Importe o Banco de Dados:**
|
|
* No painel de controle do InfinityFree, abra o `phpMyAdmin`.
|
|
* Selecione o banco de dados que você criou.
|
|
* Vá para a aba "Importar".
|
|
* Faça o upload do arquivo `database/schema.sql` e execute a importação.
|
|
6. **Acesse o site:** Seu site já deve estar funcionando!
|
|
|
|
## Acesso ao Admin
|
|
|
|
* **URL:** `http://seusite.epizy.com/admin` (será implementado)
|
|
* **Usuário:** `admin@exemplo.com`
|
|
* **Senha:** `ChangeMe123!`
|
|
|
|
**IMPORTANTE:** A senha no `schema.sql` é um placeholder. Você precisará trocá-la. Um script para criar o admin com uma senha segura (`scripts/seed_admin.php`) será fornecido.
|
|
|
|
## Observações
|
|
|
|
* A pasta `uploads` precisa de permissão de escrita para que o upload de imagens de produtos funcione. Você pode precisar ajustar as permissões via FTP (geralmente para 755).
|
|
* Este projeto foi desenvolvido com uma estrutura simples para fins educacionais e de portfólio. Para um ambiente de produção real, considere usar um framework PHP robusto como Laravel ou Symfony.
|