如何在Laravel 4.2中将基本URL设置为/ subfolder

时间:2015-10-14 14:02:57

标签: laravel laravel-4

我已通过this回答将我的laravel 4.2应用程序上传到 www.example.com/bangla 等共享主机的/subfolder

我的申请结构是

example.com/    (the root of your web hosting)
|-- laravel4_base/   (Here goes all contents except public folder)
|-- [some other folders...]
|-- public_html/    
|   |-- [some other folders...]
|   |-- bangla/      (Here goes contents of public folder)

现在我在我的视图中有这些菜单链接

<li><a href="/">Home</a></li>
<li><a href="/rj">Rj</a></li>

我的问题是每当我点击它们就应该把我送到

www.example.com/bangla
www.example.com/bangla/rj

但需要

www.example.com
www.example.com/rj

我的 route.php 看起来像

Route::get('/','HomeController@index');
Route::get('rj','HomeController@rj');

HomeController.php 看起来像

public function index()
{
    return View::make('home');
}
public function rj()
{
    return View::make('rj');
}

基本上,基本路径未更改为子文件夹 www.example.com/bangla

我在stackoverflow中做了很多搜索。有些是

laravel 4 setting base url to /subfolder

How to set sub-directory for base URL of laravel?

同样在laracast。但所有这些都没有得到答复,或者他们没有解决问题的任何答案。

因此,简单来说,问题是如何将基本网址从 www.example.com 更改为 www.example.com/bangla

2 个答案:

答案 0 :(得分:1)

如果您使用以/开头的网址,它会告诉浏览器它是一个绝对网址,因此浏览器会自然地从您当前网址的根目录开始查找,该网址始终是域名。< / p>

为了防止这种情况,您可以使用laravel的帮助函数为您生成URL。

http://laravel.com/docs/4.2/helpers#urls

<li><a href="{{ action('HomeController@index') }}">Home</a></li>
<li><a href="{{ action('HomeController@rj') }}">Rj</a></li>

答案 1 :(得分:0)

我也遇到了这个问题,我的代码是这样的

<a class='btn btn-warning' href='{{ url('/jobCatEdit/'.$dtJobCat->jcid) }}'>

及其工作