В настоящее время я работаю над проектом с Symfony и VueJS.Symfony - это фронт моего приложения, а также API, в то время как VueJS используется в качестве бэк-офиса.
Интересно, можно ли было иметь оба проекта под одним и тем же доменным именем, имея путьчтобы дифференцировать их.
Кроме того, я также хочу иметь единственную связь для обеих платформ.Обычно мы остаемся на связи с сеансом Symfony и токеном OAuth, данным API Symfony для VueJS.
Для этого требования я теперь создаю токен OAuth каждый раз, когда кто-то успешно подключается к приложению, и сохраняю его влокальное хранилище, как это было бы у VueJS.
Но теперь мне нужна хорошая конфигурация для размещения в nginx, чтобы они оба могли работать под одним и тем же доменным именем.
Не стесняйтесь сообщитьЯ хотел бы предоставить больше информации, я надеюсь, что это может быть сделано!Если нет, я открыт для предложений!
Редактировать:
location / {
try_files $uri /app.php$is_args$args;
}
location /admin {
alias /path/admin/public/dist;
index index.html;
try_files $uri $uri/ /index.html;
}
location ~ /public/dist/* {
alias /path/admin/public/dist;
try_files $uri $uri/ /index.html;
}
location ~ ^/app\.php(/|$) {
fastcgi_pass unix:/run/php/php7.1-fpm.sock;
fastcgi_split_path_info ^(.+\.php)(/.*)$;
include fastcgi_params;
fastcgi_param SCRIPT_FILENAME $realpath_root$fastcgi_script_name;
fastcgi_param DOCUMENT_ROOT $realpath_root;
internal;
}
С этой конфигурацией мне удалось получить доступ к части VueJS, почти все ресурсы загружены (кроме одногоошибочно называется).Как только я захожу на свою страницу, запускается vueJS и переписывает URL-адрес в / admin / login.Я могу войти в систему, я могу получить доступ ко всем страницам без проблем, но когда я перезагружаюсь, nginx больше не распознает путь, и меня перенаправляют на ошибку Symfony 404.