如何在不将server.php重命名为index.php的情况下从laravel6 url中删除public

时间:2019-11-05 10:34:17

标签: laravel

想要从我的URL中删除公共文件而不将server.php重命名为index.php

试图通过使用以下代码在根目录中创建一个.htaccess文件来解决此问题:

    <IfModule mod_rewrite.c>
      RewriteEngine On
      RewriteRule ^(.*)$ public/$1 [L]
    </IfModule>

给我错误404

1 个答案:

答案 0 :(得分:2)

默认情况下,将从公共文件夹加载网站。如果要从URL中删除public,请将.htaccess文件从public文件夹复制到根目录,然后将代码替换为以下内容。

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

RewriteEngine On


RewriteCond %{REQUEST_FILENAME} -d [OR]
RewriteCond %{REQUEST_FILENAME} -f
RewriteRule ^ ^$1 [N]

RewriteCond %{REQUEST_URI} (\.\w+$) [NC]
RewriteRule ^(.*)$ public/$1 

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ server.php