laravel - 添加/公共/到路线

时间:2017-03-23 12:06:36

标签: apache laravel

我已经移动了我的应用程序,现在我需要在所有内容之前添加/ public /以使其正常工作。我需要更改哪些设置才能自动生成并正确加载css等?

4 个答案:

答案 0 :(得分:0)

请不要公开所有Laravel文件夹。这是一个安全风险

您应该重新配置域名以重定向到/public/,而不是在域名之后添加your/path/to/laravel/public/。否则,可以访问与公共级别相同的所有其他文件夹,这会带来巨大的安全风险,因为您的.env文件也可以访问。

答案 1 :(得分:0)

改变.env

APP_URL=http://somedomain.com/public/

而不是

APP_URL=http://somedomain.com/

对于baseurl,您可以使用

config('app.url) 

它可以解决您的问题。

答案 2 :(得分:0)

只需将域路径重定向到公用文件夹即可轻松解决问题。 感谢

答案 3 :(得分:-1)

对于laravel 5:

  1. 将Laravel根文件夹中的server.php重命名为index.php

  2. 将.htaccess文件从/ public目录复制到Laravel根文件夹。

  3. 更改.htaccess,如下静态:

  4. RewriteEngine On
    
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule ^(.*)/$ /$1 [L,R=301]
    
    RewriteCond %{REQUEST_URI} !(\.css|\.js|\.png|\.jpg|\.gif|robots\.txt)$ [NC]
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
    
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_URI} !^/public/
    RewriteRule ^(css|js|images)/(.*)$ public/$1/$2 [L,NC]
    

    如果需要任何其他静态文件,只需将扩展名添加到之前声明的列表