首先,对不起,如果这个问题已经在另一个线程中得到了回答,但我花了很多时间研究它,但什么也没有。我确实在这里找到了一个没有答案的旧帖子(Url redirect append new url to the old url)。
这是我的问题:
在 Laravel 中并且仅在我的开发服务器上重定向时,新的 url 会附加到旧的 URL 上。例如,假设我在 adomain.com/login 上,并且表单操作设置为 URL::route('doLogin') <=> adomain.com/doLogin。显示页面时,表单操作设置为"adomain.com/login/http://adomain.com/doLogin"
我不明白的是,完全相同的代码在我的生产服务器上工作,具有完全相同的设置。
这是我的设置:
我在 Digital Ocean(Ubuntu,NginX)上有两个 Laravel Forge 配置的服务器。我对两者都使用了相同的配置,因为一个是我的生产服务器,另一个是我的开发服务器/测试服务器。我使用 BitBucket 在分支上提交我的更改(master 用于生产,dev 用于开发)。
有人可以帮我理解/解决这个问题吗?
谢谢,史蒂夫
****更新
感谢您的建议,我不确定如何添加 http。我使用 Laravel 如下:
看法:
Form::open(array('url'=>URL::route('adminLogin'), 'class'=>'form-horizontal'))
路线:
Route::get ('admin/login', array('as' => 'adminLogin', 'uses'=>'AdminAuthController@showLogin'));
Route::post('admin/login', 'AdminAuthController@postLogin');
Route::get ('admin/logout', 'AdminAuthController@getLogout');
这是我为页面上的表单获取的 html:
<form method="POST" action="http://adomain.com/http://adomain.com/admin/login" accept-charset="UTF-8" class="form-horizontal">
我当地的环境是 LAMP:它工作得很好
我的开发环境是带有 NginX、MySql 和 PHP 的 Ubuntu 14.04:它不起作用
我的生产环境是带有 NginX、MySql 和 PHP 的 Ubuntu 14.04:它运行良好
我完全一无所知。