如何在 cpanel 或共享主机上部署 laravel 项目
在共享主机上部署 Laravel 项目可能有点棘手,但只要采取正确的步骤,这完全是可能的。在本指南中,我们将引导您完成将 Laravel 项目上传和部署到 cPanel 或共享主机环境的过程。
步骤 1:准备 Laravel 项目文件
第一步是压缩整个 Laravel 项目,确保包含所有必要的文件。这包括从应用程序、配置、数据库和其他核心目录到 .env 文件和公共资产的所有内容。
步骤 2:将 Zip 文件上传至 cPanel
登录您的 cPanel 账户并转到文件管理器。导航到 public_html 目录(这通常是共享主机上您的网站的根文件夹)。
在此处上传您的 Laravel 项目的 zip 文件。
步骤 3:解压公共目录中的文件
上传 zip 文件后,右键单击该文件并选择“提取”将其直接解压到 public_html 目录中。
确保所有 Laravel 项目文件都正确放置在 public_html 文件夹中。您应该在 public_html 中看到项目的根结构(例如,app、bootstrap、config 等)。
步骤 4:为 Laravel 配置 .htaccess
Laravel 项目旨在通过公共文件夹路由请求。为了确保这在共享托管环境中正常工作,您需要在根 public_html 目录中创建或修改 .htaccess 文件。
以下是您需要添加到 .htaccess 文件的内容:
`
RewriteEngine On # Redirect all requests to the public folder RewriteRule ^(.*)$ public/$1 [L] # Deny access to all directories except public RewriteRule ^(app|bootstrap|config|database|resources|routes|storage|tests|vendor)/(.*)$ - [R=404,L] # Deny access to sensitive files RewriteRule ^(\.env|\.log|\.git|composer\.(json|lock)|artisan|phpunit\.xml)$ - [R=404,L]
`
此代码将确保:
所有传入请求都被重定向到公共文件夹。
拒绝直接访问 app、bootstrap、config 等敏感目录。
.env、.git 和 composer.json 等敏感文件的访问被阻止。
步骤5:配置.env文件
您需要为生产环境配置 .env 文件。请确保设置以下参数:
`APP_ENV=生产
APP_DEBUG=false
APP_KEY=base64:你的应用密钥
DB_CONNECTION=mysql
DB_HOST=你的数据库主机
数据库端口=3306
DB_DATABASE=你的数据库名称
DB_USERNAME=你的数据库用户
DB_PASSWORD=你的数据库密码`
如果尚未生成新应用程序密钥,请确保生成。您可以在本地执行此操作,然后在 .env 文件中更新它:
`php artisan 密钥:生成`
根据托管服务提供商提供的信息更新数据库凭据。
步骤 6:为目录设置正确的权限
某些目录(例如 storage 和 bootstrap/cache)需要由 Web 服务器写入。请为这些目录设置正确的权限。
要做到这一点:
第 7 步:浏览您的网站
一切设置完成后,访问您的网站域名,您应该会看到您的 Laravel 应用程序上线!请务必测试所有功能,以确保一切按预期运行。
结论
只要配置正确,就可以在共享主机上部署 Laravel 应用程序。按照上述步骤,您可以立即在 cPanel 主机上启动并运行您的 Laravel 项目。