如果页面是 Laravel 中的目录列表,则重定向到主页
Redirect to homepage if page is a directory listing in Laravel
如果用户所在的页面是目录列表,我希望能够将用户重定向(到 404 页面或返回主页),如下所示:
这是我的 .htaccess 文件:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ / [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
Laravel 可以吗?我知道您可以重定向到 app/Exceptions/Handler.php 文件中的特定页面,以防出现特定错误,例如 404 或 500。也许可以使目录生成错误,并使 handler.php 做重定向?
您可以使用
进行 php 重定向
<?php
// PHP permanent URL redirection test
header("Location: http://www.rapidtables.com/web/dev/php-redirect.htm", true, 301);
exit();
?>
你看过吗:This tutorial?
严格来说这不是一个 Laravel 问题,目录列表由 Apache 直接提供,Laravel 它甚至没有加载。
作为一个简单的解决方法,您可以在目录中放置一个最低限度的 index.html 并设置一个用于重定向的元数据,即:
<meta http-equiv="refresh" content="0;URL=http://www.example.com/example">
更好的解决方案是正确配置 Apache,您可以找到一些信息 here
如果用户所在的页面是目录列表,我希望能够将用户重定向(到 404 页面或返回主页),如下所示:
这是我的 .htaccess 文件:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews
</IfModule>
RewriteEngine On
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)/$ / [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
Laravel 可以吗?我知道您可以重定向到 app/Exceptions/Handler.php 文件中的特定页面,以防出现特定错误,例如 404 或 500。也许可以使目录生成错误,并使 handler.php 做重定向?
您可以使用
进行 php 重定向 <?php
// PHP permanent URL redirection test
header("Location: http://www.rapidtables.com/web/dev/php-redirect.htm", true, 301);
exit();
?>
你看过吗:This tutorial?
严格来说这不是一个 Laravel 问题,目录列表由 Apache 直接提供,Laravel 它甚至没有加载。
作为一个简单的解决方法,您可以在目录中放置一个最低限度的 index.html 并设置一个用于重定向的元数据,即:
<meta http-equiv="refresh" content="0;URL=http://www.example.com/example">
更好的解决方案是正确配置 Apache,您可以找到一些信息 here