【问题标题】:Laravel in public 'www' directory how to protectLaravel 在公共 'www' 目录中如何保护
【发布时间】:2015-12-04 09:05:14
【问题描述】:

如果我将 laravel 应用程序上传到主机上的公用文件夹 -“www”,如何保护它,我无法将应用程序上传到“www”文件夹的父级,因为我之前已将 Laravel 应用程序文件夹上传到父目录'www',一切正常,当 laravel 应用程序位于 'www' 的父文件夹中时,exept mkdir() 函数不起作用,那么当 Laravel 应用程序在公共文件夹中时如何保护它?

【问题讨论】:

  • .htaccess 并将Deny from All 放入您的 Lavarel 根目录
  • 如果可以,请将主机的根文件夹设置为 www/public。如果不能,则必须配置重定向(如果您使用的是 Apache,则使用 .htaccess)
  • 谢谢,两种方法我都试试
  • 我应该在每个文件夹(应用程序、引导程序和供应商)中执行“.htaccess Deny from All”吗?
  • 我认为您应该考虑如何修复父文件夹中的 mydir 权限。将 Laravel 放在你的公共目录中违背了你能想到的所有最佳实践。 Laravel 甚至没有被设计为在这种情况下正常工作。它专门设计为位于父文件夹中,并且只有其 public 文件夹可作为 Web 根目录访问。不要仅仅因为您无法获得您的 linux 权限而损害您的整个站点。 (事实上​​,这可能会让你不这样做变得更加重要!)

标签: php laravel


【解决方案1】:

将您的 Laravel 应用程序放在“www”文件夹中,并在应用程序的根目录中创建 .htaccess 文件。确保你有你的 mod_rewrite 模块。

#.htaccess

RewriteEngine On
RewriteRule ^(.*)$ public/$1 [L]

这将从 URL 中删除 .../public/...

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-01-13
    • 2014-02-15
    • 2018-11-19
    • 1970-01-01
    • 2019-07-15
    • 2020-11-20
    • 1970-01-01
    • 2016-07-25
    相关资源
    最近更新 更多