Как продвигать проект Vue к производству? - PullRequest
0 голосов
/ 31 мая 2018

Используя Ubuntu 16.04 и Nginx, я пытаюсь развернуть проект Vue в производство, но продолжаю работать против белой стены - буквально.

Я клонировал свой проект на

/var/www/html/maak-web/maak_web/

Установил всепотребовались зависимости с npm install и запустили следующий скрипт сборки:

node build/build.js

Это запустило building for production, которое прошло успешно и проект развернут.

В моей конфигурации по умолчанию для nginx я изменил корневой каталог так, чтобы он указывал на правильную папку следующим образом:

root /var/www/html/maak-web/maak_web;

Когда я сейчас посещаю свой домен / IP, я вижу, что проект загружается (например, favicon)и имя сайта), а также я могу получить доступ к своим static файлам отсюда:

https://mysitedomain.com/static

Кажется, проект Vue работает, но проблема в том, что он на самом деле не работаетотображать что-либо и посещать дополнительные просмотры, такие как /oneview и /anotherview выбросить 404 страницы не найдены ошибки.

Поскольку Vue, похоже, не выдает никаких ошибок, я подозреваю, что это проблема конфигурации nginx !?

1 Ответ

0 голосов
/ 31 мая 2018

Решение заключалось в том, чтобы создать производство в папке / dist / и публиковать только содержимое папки / dist /.После того, как я скопировал содержимое в / www / html /, оно заработало нормально.

, поскольку я обнаружил, что произошла ошибка из-за отсутствия нужных файлов в выходной папке, я предлагаю вам обновить файл config/index.jsвключить туда правильное местоположение производства, установив index и assetsRoot для build объекта

  build: {

    // Template for index.html
    index: path.resolve(__dirname, '../../srv/www/index.html'),

    // Paths
    assetsRoot: path.resolve(__dirname, '../../srv/www'),
    assetsSubDirectory: 'static',
    assetsPublicPath: '/',
    ...
...