首先,这是我的laravel和PHP版本:Laravel框架7.17.2PHP 7.3.19(cli(
我的laravel项目有一个更大的问题:
在我的vhost文件中,我有:
<VirtualHost *:80>
ServerName www.name.test
DocumentRoot "C:webnamenamebackendpublic"
</VirtualHost>
在主机文件中:
127.0.0.1 www.name.test
当尝试通过键入以下内容来访问项目时:http://www.name.test它将我重定向到urlhttp://www.name.test/public/public
我在根文件夹和公用文件夹中都有.htaccess,其中包含以下内容:
<IfModule mod_rewrite.c>
<IfModule mod_negotiation.c>
Options -MultiViews -Indexes
</IfModule>
RewriteEngine On
# Handle Authorization Header
RewriteCond %{HTTP:Authorization} .
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
# Redirect Trailing Slashes If Not A Folder...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} (.+)/$
RewriteRule ^ %1 [L,R=301]
# Send Requests To Front Controller...
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^ index.php [L]
</IfModule>
我不知道为什么会发生这种情况,以前它工作得很好,但我猜是在项目中意外更改的,因为它发生在每台计算机上,所以看起来不像php配置问题。
希望有人能就这个问题提供一些建议。
有两种方法可以解决此问题:
步骤1:
只需将项目根目录中的server.php
文件重命名为index.php
文件即可。
步骤2:
复制项目根目录的公用文件夹中的index.php
,并将其粘贴到根目录中。确保之前没有其他index.php
。
然后更换这2条线路:
require __DIR__.'/../vendor/autoload.php';
require_once __DIR__.'/../bootstrap/app.php';
带有
require __DIR__.'/vendor/autoload.php';
require_once __DIR__.'/bootstrap/app.php';
希望这两种方法中的任何一种都有帮助!!