@amigo567

Laravel herd как использовать с vue spa или как быстро настраивать домены?

Много экспериментирую и создаю разные приложежния: vue spa + laravel api. Как вы быстро создаёте нужные домены?
Laravel herd очень нравиться: просто создаю новую папку, например, "api.components" , добавляю в hosts файл "127.0.0.1 api.components.test" и бек "https://api.components.test" работает. Но как получить корректно работающий https://components.test домен (vue app, без порта, то есть 443)?
Если прописать в vite.config:
import { fileURLToPath, URL } from 'node:url'

import { defineConfig } from 'vite'
import vue from '@vitejs/plugin-vue'
import mkcert from 'vite-plugin-mkcert'

// https://vitejs.dev/config/
export default defineConfig({
  plugins: [
    vue(),
    mkcert()
  ],
  resolve: {
    alias: {
      '@': fileURLToPath(new URL('./src', import.meta.url))
    }
  },
  server: {
    host: 'components.test',
    port: 443,
  },
})

То не работает корректно, так как nginx, который в herd, использует этот порт.
Port 443 is in use, trying another one...
12:04:20 [vite] server restarted.

  ➜  Network: https://components.test:444/

И получаются разные top-level domains, и не могу использовать laravel session-based authorization.
Скачал nginx, сгенерировал ключи, добавил в nginx.conf:
server {
        listen       443 ssl;
        server_name  components.test;

        ssl_certificate      nginx-selfsigned.crt;
        ssl_certificate_key  nginx-selfsigned.key;

        ssl_session_cache    shared:SSL:1m;
        ssl_session_timeout  5m;

        ssl_ciphers  HIGH:!aNULL:!MD5;
        ssl_prefer_server_ciphers  on;

        location / {
            proxy_pass http://localhost:5173;
            proxy_set_header Host $host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_set_header X-Forwarded-Proto $scheme;
        }
    }


Но и это не работает, работает только если нажать "stop all services" в laravel herd.

TL;DR
Хочу быстро создавать домены.
Захотел что-то проверить и хочу приблизительно так:
1) Создал внутри testsomething папке ещё две: backend, frontend
2) Прописал в hosts 127.0.0.1 testsomething.test api.testsomething.test
3) npm run dev
4) php artisan serve
5) Домены: testsomething.test и api.testsomething.test работают, и можно собственно начинать писать код.
  • Вопрос задан
  • 168 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы