Laravel 拉雷维尔。将端口添加到主url
站点在新服务器上使用端口8080Laravel 拉雷维尔。将端口添加到主url,laravel,Laravel,站点在新服务器上使用端口8080 I need "site.com" => "site.com:8080" 如何更改laravel中的基本url以获得正确的链接,包括css/js和重定向?好的,我们尝试了很多方法 好像是虫子什么的。他们从Laravel 4开始就有了它,不想修复它: 我在这里看到的唯一解决方案是: 1.使用标准端口。 2.手动生成URL。例如: // in controller $baseUrl = 'http://'.$_SERVER['HTTP_HOST'].'/'
I need "site.com" => "site.com:8080"
如何更改laravel中的基本url以获得正确的链接,包括css/js和重定向?好的,我们尝试了很多方法 好像是虫子什么的。他们从Laravel 4开始就有了它,不想修复它: 我在这里看到的唯一解决方案是: 1.使用标准端口。 2.手动生成URL。例如:
// in controller
$baseUrl = 'http://'.$_SERVER['HTTP_HOST'].'/';
// in template
<link hre="{{ $baseUrl.'css/myStyleSheet.css' }}" ....>
//在控制器中
$baseUrl='http://'。$_服务器['http_主机].//';
//模板中
或者,您可以在顶部布局中设置此变量,以便所有继承的视图都有它。我最后在AppServiceProvider.php的boot()函数中添加了以下行:
URL::forceRootUrl(env('APP_URL'));
您也可以在那里对其进行硬编码,但这样它会使用.env文件中的设置
警告:如果APP_URL是https,那么我还需要添加以下行,否则它会将其更改为http(奇怪):
您是否需要告诉Laravel生成类似
http://example.com:8080/css/myStyle.css
?当您转到http://example.com:8080
?是的,我需要像-website这样的URL,但是css尝试在没有Port的情况下包含,您如何生成css链接?代码请参见示例:
我输入了,但没有结果1。可能是,但我现在不能。这些不是重定向。您只需在控制器中获取带有端口的主机,然后将$baseUrl
var传递到视图中,并使用它手动生成资产的URL。刚刚尝试过,任何端口都可以正常工作。不需要生成URL,因为所有重定向仍然无法工作。Htaccess可以帮助解决问题。我在函数getRootUrl()中编辑文件\vendor\laravel\framework\src\illumb\Routing\UrlGenerator.php
。我添加了端口$this->cachedRoot=$this->forcedRoot?:$this->request->root()。:8080'
。Css/js和重定向都很有效!
URL::forceScheme('https');