我将Laravel中“public”文件夹的内容部署到主机的“public_html”文件夹中,并将其余文件夹部署到我在“public_html”文件夹旁边创建的“core”文件夹中。我将“public_html”文件夹中的index.php文件信息更改为以下格式:
require __DIR__.'/../vendor/autoload.php';
$app = require_once __DIR__.'/../bootstrap/app.php';
至:
require __DIR__.'/../core/vendor/autoload.php';
$app = require_once __DIR__.'/../core/bootstrap/app.php';
我还在env文件中设置了数据库信息。我检查了我的PHP版本。我使用Laravel 5.7,我的PHP版本是7.3.3
我认为我们重新定位公用文件夹后的解决方案是更改索引文件:
# These two lines should be changed...
require __DIR__.'/../bootstrap/autoload.php';
$app = require_once __DIR__.'/../bootstrap/start.php';
# ... into these two lines.
require __DIR__.'/../laravel/bootstrap/autoload.php';
$app = require_once __DIR__.'/../laravel/bootstrap/start.php';
那么我们应该在你的www文件夹中配置.htaccess这是www文件夹的树
config/
logs/
www/
app/
bootstrap/
public/
packages/
.htaccess
index.php
...
vendor/
...
然后在.htaccess里面放置以下.htaccess文件。
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{REQUEST_URI} !^public
RewriteRule ^(.*)$ public/$1 [L]
</IfModule>
您的Laravel应用程序现在应该可以运行。