반응형
새로 고침 시 VueJs 페이지 404 제공
방금 내 블로그 앱을 테스트 서버에 올렸어.홈페이지에서 게시물을 클릭하면 slug URL을 이용해 한 페이지를 볼 수 있지만, 한 페이지에서 새로 고치면 404 페이지가 나온다.
사용자 구성요소를 위해 다음과 같은 것을 사용했었다.
Route::get('/admin/users{vue_capture?}', function () {
return view('admin');
})->where('vue_capture','[\/\w\.-]*');
내 경로.js는 다음과 같이 보인다.
import VueRouter from 'vue-router';
import Admin from './components/Admin.vue';
import Homepage from './components/Homepage.vue';
import Subscriber from './components/subscriber/Main.vue';
import Single from './components/Single.vue';
import Categories from './components/Categories.vue';
let routes = [
{
path: '/',
component: Homepage
},
{
path: '/subscriber',
component: Subscriber
},
{
path: '/post/:slug',
name: 'post',
component: Single
},
{
path: '/categories/:slug',
component: Categories
}
];
export default new VueRouter({
mode: 'history',
routes
});
그리고 나의 라라벨 노선은 다음과 같다.
<?php
use App\User;
use App\Http\Resources\User as UserResource;
use App\Http\Resources\UserCollection;
/*
|--------------------------------------------------------------------------
| Web Routes
|--------------------------------------------------------------------------
|
| Here is where you can register web routes for your application. These
| routes are loaded by the RouteServiceProvider within a group which
| contains the "web" middleware group. Now create something great!
|
*/
Route::get('/', function () {
return view('homepage');
});
Auth::routes();
Route::get('/logout', 'Auth\LoginController@logout')->name('logout' );
Route::get('/home', 'HomeController@index')->name('home');
/************************************************************
API'S
************************************************************/
Route::get('/api/homeposts', 'HomePostsController@posts')->name('homeposts');
Route::resource('/api/users', 'AdminUsersController');
Route::resource('/api/posts', 'AdminPostsController');
Route::resource('/api/categories', 'AdminCategories');
Route::get('/api/loggedUser', 'AdminUsersController@loggUser')->name('singleUser');
Route::put('/api/updatedUser/{id}', 'AdminUsersController@updateUser')->name('singleUserUpdate');
Route::resource('/api/subscriber', 'SubscriberController');
/*Route::get('/admin/users{vue_capture?}', function () {
return view('admin');
})->where('vue_capture','[\/\w\.-]*');*/
/************************************************************
ADMIN ROUTES
************************************************************/
Route::group(['middleware'=>'admin'], function(){
Route::get('/admin/users', 'AdminUsersController@users')->name('allusers');
Route::resource('/admin/posts', 'AdminPostsController');
});
/************************************************************
SUBSCRIBER ROUTE
************************************************************/
Route::group(['middleware'=>'subscriber'], function(){
Route::get('/subscriber/{vue_capture?}', function () {
return view('homepage');
})->where('vue_capture','[\/\w\.-]*');
});
/**********************************************************/
Route::get('/single/post/{slug}', 'AdminPostsController@single');
그런데 포스트 페이지 한 장에 대해 정확히 어떻게 처리할 수 있을까?
진입점을 다음과 같이 가정해 보십시오.index
당신의 방법HomeController
, 당신은 단지 당신의 하단에 이 루트를 추가하기만 하면 된다.routes/web.php
파일
Route::get('{any}', function () {
return view('homepage');
})->where('any','.*');
이것은 Vue와 문제가 아니다.
내가 웹페이지 http://blog.sidneylab.com/post/quasi-non-est-magnam-quae-aut-omnis-nisi을 방문하면 (당신의 웹사이트에 첫 번째 게시물) 나는404
서버 자체의 오류.다른 것들도 마찬가지야/post/
즉, 경로가 일치할 때 경로 핸들러가 관련 Vue 색인 또는 코드를 전송하지 않는 경우.다음 중 하나를 사용하여 이 작업을 수행하는지 확인하십시오./post/
URL 또는 기본 경로 핸들러 하단에 캐치 올 핸들러 추가:
Route::get("{any}", "DefaultHandler@myMethod")->where("any", ".*");
의 밑바닥에 덧붙이다web.php
Route::get('{path}', 'HomeController@dashboard')->where('path','([A-z\d\-\/_.]+)?')`
참조URL: https://stackoverflow.com/questions/51399802/vuejs-page-gives-404-on-refresh
반응형
'Programing' 카테고리의 다른 글
Vuex: 왜 내 게터가 제대로 정렬하지 않는지 모르겠어. (0) | 2022.05.22 |
---|---|
지도를 구현하고 삽입 순서를 유지하는 Java 클래스? (0) | 2022.05.22 |
vuex에서 {dispatch, commit }에 대한 유형은? (0) | 2022.05.22 |
오류 수정 방법: 구현되지 않음: 탐색(해시 변경 제외) (0) | 2022.05.22 |
Vuejs에서 구성 요소를 렌더링하기 전에 데이터 가져오기 (0) | 2022.05.22 |