Laravel 4.1相对网址解析

时间:2014-04-10 10:31:06

标签: php apache laravel proxy

我在laravel 4中发现了许多对相对网址的引用,但没有解决我(可能很容易)的问题。 使用Laravel 4.1的全新安装,我只是尝试加载一个style.css文件,我把它放在public / css / style.css中

我在view / hello.php中使用简单的

调用它
<link href="<?php echo URL::asset('css/style.css');?>" rel="stylesheet" type="text/css">

如果我从内部网络更加开放,它可以正常工作。 如果我在防火墙上使用反向代理规则从外部打开,则不会加载css,因为它链接到 192.168.1.1/css/style.css

我使用Yii框架做了同样的事情,它从内部和外部请求都可以正常工作,原因 我已经看到了我与css的相对路径(/css/style.css)。

我的问题是,我已经完成了一个在内联网上顺利运行的laravel应用程序,但是我已经把它放了 外部使用反向代理规则(类似于myapp.mydomain.com:1234)。 除了要加载的css或js文件之外,应用程序不能从外部工作,因为所有路由都已解析 到内部服务器ip(192.168.1.1)。

再次尝试使用Yii创建一个简单的应用程序,它可以顺利运行,无论是内联网还是互联网。

现在我的问题是:我错过了laravel配置中的内容,我需要找到解决方法或者我需要重写 我的应用程序有一个不同的框架?

2 个答案:

答案 0 :(得分:0)

通常,相对URL不需要纯HTML中的相对文件路径:

echo '<link href="css/style.css" rel="stylesheet" type="text/css">';

不涉及Laravel网址构建。

答案 1 :(得分:0)

听起来您的外部请求没有到达项目根文件夹。

我认为您需要设置一个虚拟主机来引导从Laravel项目的myapp.mydomain.com:1234your.internal.address/public文件夹的流量。