Мы попытались развернуть наш сервер laravel, загрузив нашу папку laravel на сервер linux. Мы помещаем общую папку в public_html / laravelsite, а все остальное в папку с именем laravelsite. Мы добавили
$this->app->bind('path.public', function() {
return base_path().'/../public_html';
});
в наш AppServiceProvider. Но при просмотре сайта в браузере мы получаем следующие ошибки:
app.css: 1 Не удалось загрузить ресурс: сервер ответил с состоянием 500 (Внутренняя ошибка сервера) bootstrap.js:1
Не удалось загрузить ресурс: сервер ответил с состоянием 500 (Внутренняя ошибка сервера) app.js: 1
Не удалось загрузить ресурс: сервер ответил с состоянием 500 (Внутренняя ошибка сервера) bootstrap.js: 1
Не удалось загрузить ресурс: сервер ответил со статусом 500 (Внутренняя ошибка сервера) app.js: 1
Не удалось загрузить ресурс:Сервер ответил со статусом 500 (Внутренняя ошибка сервера) app.css: 1
app.css: 1 Не удалось загрузить ресурс: сервер ответил со статусом 500 (Внутренняя ошибка сервера) app.css:1
Я прокомментировал код, который выдает ошибки при посадке. Клинок Итак, мы посмотрели следующий пост
Как изменить публичный путь на что-то, содержащееподчеркнуть в Ларavel Mix?
Но это не сработало для нас.
landing.blade (целевая страница)
<!DOCTYPE html>
<!-- hidden override for w3 style this has to be removed before this goes in production !!!!!!!! -->
<html style="overflow:hidden">
<head>
<meta property="og:image" content="/favicon.png" />
<title>Laravel Site</title>
<meta name="description" content="Welcome to out Laravel Site. Come on in!" />
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<meta name="csrf-token" content="{{csrf_token()}}">
<!-- This is the first error -->
<link href=" {{ mix('css/app.css') }}" rel="stylesheet">
<link href='https://fonts.googleapis.com/css?family=Raleway:800' rel='stylesheet'>
<link href='https://fonts.googleapis.com/css?family=Raleway:500' rel='stylesheet' type='text/css'>
<link href=" {{ asset('css/animate.css') }}" rel="stylesheet">
<link href=" {{ asset('css/text-editor.css') }}" rel="stylesheet">
<link href='https://fonts.googleapis.com/css?family=Roboto:100,300,400,500,700,900|Material+Icons' rel="stylesheet">
<script src="https://d3-geomap.github.io/d3-geomap/vendor/d3.geomap.dependencies.min.js"></script>
<script src="https://d3-geomap.github.io/d3-geomap/js/d3.geomap.min.js"></script>
</head>
<body style="background-color: #f2f2f2;">
<div id="app">
<app></app>
</div>
<!-- This is the second error -->
<script src="{{ mix('js/bootstrap.js') }}"></script>
<!-- This is the third error -->
<script src="{{ mix('js/app.js') }}"></script>
</body>
</html>
webpack.mix
let mix = require("laravel-mix");
mix.setPublicPath("public_html/laravelsite/");
/*
|--------------------------------------------------------------------------
| Mix Asset Management
|--------------------------------------------------------------------------
|
| Mix provides a clean, fluent API for defining some Webpack build steps
| for your Laravel application. By default, we are compiling the Sass
| file for the application as well as bundling up all the JS files.
|
*/
mix.webpackConfig({
resolve: {
extensions: [".js", ".vue", ".json"],
alias: {
vue$: "vue/dist/vue.esm.js",
"@": __dirname + "/resources/assets/js"
}
}
});
mix
.js("resources/assets/js/app.js", "public_html/laravelsite/js")
.setResourceRoot("")
.js("resources/assets/js/bootstrap.js", "public_html/laravelsite/js")
.sass("resources/assets/sass/app.scss", "public_html/laravelsite/css");
Он пытаетсязагрузите файлы в http://websitename.com/css/app.css, так что, вероятно, они находятся в папке public_html. Но внутри этой папки у нас есть еще одна папка с именем laravelsite, поэтому она должна искать http://websitename.com/laravelsite/css/app.css