【问题标题】:Remove htaccess action to public directories删除对公共目录的 htaccess 操作
【发布时间】:2015-09-01 02:02:15
【问题描述】:

如何禁用重写规则以访问 Laravel 公共目录,而不影响我的 Laravel 项目?

例如:我的公共 Laravel 中有 (asd) 目录,但我无法访问

如果我删除

RewriteRule ^ index.php [L]

line 我可以访问,但这会影响我的 Laravel 项目。

<IfModule mod_rewrite.c>

    <IfModule mod_negotiation.c>
        Options -MultiViews
    </IfModule>

    RewriteEngine On
    RewriteBase /

    # Redirect Trailing Slashes...
    RewriteRule ^(.*)/$ /$1 [L,R=301]

    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]

</IfModule>

【问题讨论】:

  • “访问目录”是什么意思?您想获得目录列表吗?或者您正在访问该目录中的特定文件? 预期的响应是什么?
  • laravel 项目前:public//xpto 如果在 url 我写:mywebsite.com/asd 这将在 laravel 项目中继续,但如果我访问 mywebsite.com/xpto,我需要进入我的 xpto 目录跨度>

标签: apache .htaccess laravel


【解决方案1】:

这一行完全符合您的要求(即将规则应用于除真实目录之外的任何内容):

RewriteCond %{REQUEST_FILENAME} !-d

但是,您的重写似乎有问题。

您是否查看了您的网络服务器中的访问日志?

【讨论】:

  • 我没有访问权限,我很抱歉
猜你喜欢
  • 2010-10-01
  • 2016-07-25
  • 1970-01-01
  • 2016-12-02
  • 2018-04-20
  • 1970-01-01
  • 2015-07-17
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多