I inherited a Laravel + Wordpress integrated website and had to migrate to a new server. The Wordpress website appears to work fine, and some Laravel routes work, but others do not.
For example, on the website homepage, we get the following error:
Call to a member function route() on string
in Kernel.php line 231
at Kernel->gatherRouteMiddleware()
in Kernel.php line 204
at Kernel->terminateMiddleware()
in Kernel.php line 189
at Kernel->terminate()
in index.php line 61
On other routes, such as /donor/
and /parent/
, the browser simply redirects to the homepage.
Route::group(['namespace' => 'Donor', 'prefix' => 'donor'], function () {
Route::group(['prefix' => 'application'], function () {
Route::get('/', [
'middleware' => ['guest'],
'as' => 'donor.initial-application',
'uses' => 'InitialApplicationController@showApplication',
]);
Route::post('/', [
'middleware' => ['guest'],
'uses' => 'InitialApplicationController@saveApplication',
]);
Route::get('submitted', [
'as' => 'donor.submitted',
'uses' => 'InitialApplicationController@applicationSubmitted',
]);
Route::get('rejected', [
'as' => 'donor.rejected',
'uses' => 'InitialApplicationController@applicationRejected',
]);
});
Route::group(['middleware' => 'auth.donor'], function () {
Route::get('/', [
'as' => 'donor.dashboard',
'uses' => 'DashboardController@dashboard',
]);
Route::get('personal', [
'as' => 'donor.application.personal',
'uses' => 'PersonalController@showForm',
]);
.... etc ......
And on other routes, such as /account/
or /admin/
and its children, load without issue.
Route::group(['middleware' => 'auth', 'namespace' => 'Account', 'prefix' => 'account'], function () {
Route::get('/', [
'as' => 'account',
'uses' => 'ProfileController@profile',
]);
Route::get('edit', [
'middleware' => 'profile',
'as' => 'account.edit',
'uses' => 'ProfileController@edit',
]);
Route::post('edit', [
'middleware' => 'profile',
'uses' => 'ProfileController@update',
]);
Route::get('password', [
'as' => 'account.password',
'uses' => 'PasswordController@edit',
]);
Route::post('password', [
'uses' => 'PasswordController@update',
]);
});
I have tried running commands: php artisan optimize
php artisan cache:clear
php artisan route:clear
and did not resolve the issue.
Laravel resides in /
Wordpress index and config resides in /public/
Wordpress core resides in /public/wp/
Another interesting note, at first Wordpress was encountering an endless redirect loop. I was able to fix that by commenting out the following lines in .htaccess:
# Redirect Trailing Slashes If Not A Folder...
#RewriteCond %{REQUEST_FILENAME} !-d
#RewriteRule ^(.*)/$ /$1 [L,R=301]
I've tried reverting this and it does not seem to affect my problem above. Not experienced in Laravel so I am unsure what else to try.
via Chebli Mohamed
Aucun commentaire:
Enregistrer un commentaire