Laravel 5.2 路由仅适用于根目录


Laravel 5.2 routes work only on root directory

当Laravel安装在非根域的文件夹中时,我无法访问我的路由(404(。

例如,如果我在根域中安装 Laravel 并添加路由anyroutes我可以毫无问题地访问localhost/anyroutes

如果我在像localhost/project/这样的文件夹中安装 Laravel 并添加该路由:localhost/project/public/anyroutes它会给我 404。我不得不提一下,localhost/project/public/index.php/anyroutes会起作用。

我在早期版本的 Laravel 中没有这个问题。

我该如何解决这个问题?

Apache(XAMPP(,PHP 7,启用mod_rewrite和...

更新:

.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 ^(.*)/$ /$1 [L,R=301]
    # Handle Front Controller...
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^ index.php [L]
    # Handle Authorization Header
    RewriteCond %{HTTP:Authorization} .
    RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
</IfModule>

Apache Conf:

<Directory />
    Allowoverride All
   # AllowOverride none
    Require all denied
</Directory>

DocumentRoot "E:/projects"
<Directory "E:/projects">
    Options Indexes FollowSymLinks Includes ExecCGI
    AllowOverride All
    Require all granted
</Directory>
这是我

.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 ^(.*)/$ /$1 [L,R=301]
# Handle Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]