Я пытаюсь настроить компилятор SASS to CSS через Mix (ранее Elixer) в Laravel 5.4 (используя https://laravel.com/docs/5.4/mix). Все работает нормально, компилируется, и я могу настроить наблюдателя через npm, но ссылаясь на него через просмотров / макет / app.blade.php файл, как:
<link rel="stylesheet" href="{{ mix('css/app.css') }}">
не работает В моем браузере это отображается как:
<link rel="stylesheet" href="/css/app.css">
Это неправильный путь. Это должно ссылаться на Http: //localhost/website/public/css/app.css, но изменение чего-либо в коде Mix выше приводит к ошибке Laravel.
Unable to locate Mix file: /website/public/css/app.css.
Please check your webpack.mix.js output paths and try again.
Что я делаю неправильно? Нужно ли где-то устанавливать базовый путь, мой .htaccess неверен или ..? Спасибо за любые ответы.
Путь, сгенерированный помощником mix (), является правильным. Ваш домен должен указывать прямо на «публичный» каталог. Все, что выше «публичного» каталога, не должно быть доступно через HTTP (это небезопасно).
Таким образом, вам нужно создать новый домен (например, project.local
) и укажите его в общедоступном каталоге Laravel (например, /home/user/website/public/
) или просто измените корневой путь по умолчанию в конфигурации вашего веб-сервера (DocumentRoot, если Apache). Тогда URL http://project.local/css/app.css
буду работать.
Других решений пока нет …