fix: expose Vite dev server to local browser
This commit is contained in:
@@ -19,6 +19,7 @@ Todas as alterações materiais são registadas neste ficheiro. O formato segue
|
|||||||
|
|
||||||
- Nome, identidade visual e idioma orientados ao Portal de Reservas.
|
- Nome, identidade visual e idioma orientados ao Portal de Reservas.
|
||||||
- Configuração padrão alterada para PostgreSQL, Redis, SMTP/Mailpit e Europa/Lisboa.
|
- Configuração padrão alterada para PostgreSQL, Redis, SMTP/Mailpit e Europa/Lisboa.
|
||||||
|
- Configuração de desenvolvimento Vite passa a publicar módulos e HMR em `localhost:5173` e a aceitar explicitamente a origem do portal em `localhost:8000`, corrigindo a página em branco em Docker.
|
||||||
|
|
||||||
### Segurança
|
### Segurança
|
||||||
|
|
||||||
|
|||||||
@@ -54,6 +54,7 @@ Validação concluída em 4 de agosto de 2026:
|
|||||||
- Vite: build de produção concluído, 2304 módulos transformados;
|
- Vite: build de produção concluído, 2304 módulos transformados;
|
||||||
- PostgreSQL 17: `migrate:fresh --seed` concluído, incluindo extensão `btree_gist` e restrição de exclusão temporal;
|
- PostgreSQL 17: `migrate:fresh --seed` concluído, incluindo extensão `btree_gist` e restrição de exclusão temporal;
|
||||||
- smoke test HTTP: `/login` respondeu com estado 200 através do Nginx;
|
- smoke test HTTP: `/login` respondeu com estado 200 através do Nginx;
|
||||||
|
- Vite em Docker: URL pública, HMR e CORS verificados em `localhost:5173`; corrigida a página em branco causada pela publicação anterior de `0.0.0.0:5173`;
|
||||||
- verificação visual no browser integrado: não executada devido a uma política administrativa temporariamente indisponível no browser desta sessão; não foi detetado erro da aplicação.
|
- verificação visual no browser integrado: não executada devido a uma política administrativa temporariamente indisponível no browser desta sessão; não foi detetado erro da aplicação.
|
||||||
|
|
||||||
## Decisões pendentes do contexto institucional
|
## Decisões pendentes do contexto institucional
|
||||||
|
|||||||
@@ -21,6 +21,17 @@ docker compose exec postgres pg_isready -U reserva -d reserva
|
|||||||
docker compose exec redis redis-cli ping
|
docker compose exec redis redis-cli ping
|
||||||
```
|
```
|
||||||
|
|
||||||
|
### Página em branco no desenvolvimento
|
||||||
|
|
||||||
|
Se o HTML responder mas a interface React não aparecer, confirmar que `public/hot` contém `http://localhost:5173` e não `http://0.0.0.0:5173`. Depois validar os módulos:
|
||||||
|
|
||||||
|
```bash
|
||||||
|
curl -I -H 'Origin: http://localhost:8000' http://localhost:5173/@vite/client
|
||||||
|
curl -I -H 'Origin: http://localhost:8000' http://localhost:5173/resources/js/app.tsx
|
||||||
|
```
|
||||||
|
|
||||||
|
Ambos devem responder com estado 200 e `Access-Control-Allow-Origin: http://localhost:8000`. Reiniciar o serviço com `docker compose restart node` se o ficheiro `public/hot` estiver desatualizado.
|
||||||
|
|
||||||
## Atualização de código
|
## Atualização de código
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
|
|||||||
@@ -7,6 +7,22 @@ import { bunny } from 'laravel-vite-plugin/fonts';
|
|||||||
import { defineConfig } from 'vite';
|
import { defineConfig } from 'vite';
|
||||||
|
|
||||||
export default defineConfig({
|
export default defineConfig({
|
||||||
|
server: {
|
||||||
|
host: '0.0.0.0',
|
||||||
|
port: 5173,
|
||||||
|
strictPort: true,
|
||||||
|
origin: 'http://localhost:5173',
|
||||||
|
cors: {
|
||||||
|
origin: [
|
||||||
|
'http://localhost:8000',
|
||||||
|
'http://127.0.0.1:8000',
|
||||||
|
],
|
||||||
|
},
|
||||||
|
hmr: {
|
||||||
|
host: 'localhost',
|
||||||
|
port: 5173,
|
||||||
|
},
|
||||||
|
},
|
||||||
plugins: [
|
plugins: [
|
||||||
laravel({
|
laravel({
|
||||||
input: ['resources/css/app.css', 'resources/js/app.tsx'],
|
input: ['resources/css/app.css', 'resources/js/app.tsx'],
|
||||||
|
|||||||
Reference in New Issue
Block a user