如何使用 git 将我的 Laravel 项目部署到 Hostinger 的根文件夹?
Posted
技术标签:
【中文标题】如何使用 git 将我的 Laravel 项目部署到 Hostinger 的根文件夹?【英文标题】:How can I deploy my Laravel project to root folder in Hostinger with git? 【发布时间】:2018-10-24 17:29:21 【问题描述】:我正在尝试使用 git 将我的项目部署到 Hostinger,但我无法直接部署到根文件夹 (/home/uXXXXXXXX)。 cPanel中的路径直接是/home/uXXXXXXX/public_html。
无论如何要部署到根文件夹吗?我的项目在 Laravel 中。部署到共享主机的最佳方式是什么?因为部分文件夹需要在根目录中,而其他文件夹需要在 /public_html 中。我会一直在主机中手动移动文件夹吗?
我在这部分有点困惑。我会很感激任何帮助
【问题讨论】:
关于git
,我怀疑他们开箱即用。至于只公开您的public
文件夹,如果我没记错的话,您至少需要编辑两个文件,最明显的一个是public
文件夹上的index.php
,以设置正确的路径,第二个是@ 987654329@.
Here's step by step instructions to deploy a laravel 5.5 project to Hostgator.
另见this discussion。它具有在共享主机上部署的其他链接。
还找到了有关如何git push to hostgator 的要点。虽然不知道 Laravel 的任何警告......
您还可以查看 Deployer,其为 configured out of the box to install Laravel projects。
【参考方案1】:
其他答案可能有效,但没有办法使如此基本的事情复杂化。
如果您的网站在 public
文件夹而不是 public_html
本地工作,然后您必须对本地分支进行更改并重新部署到 git,该怎么办?当您的本地分支与远程分支不同步时,您将面临错误。
最好的办法是:
-
在 public_html 目录中创建一个新的
.htaccess
文件
添加这些代码
RewriteCond %HTTP_HOST ^your-domain.com$ [NC,OR]
RewriteCond %HTTP_HOST ^www.your-domain.com$
RewriteCond %REQUEST_URI !your-laravel-folder/public/
RewriteRule (.*) /your-laravel-folder/public/$1 [L]
在上述行中,您应该替换以下内容:
your-domain.com
– 输入您自己的域名并替换 your-laravel-folder
使用您的文件夹名称。
【讨论】:
这是完美的解决方案,我第一次尝试就遇到了这个答案。谢谢!【参考方案2】:您实际上可以使用 ssh 访问克隆它。
为特定域打开你的 ssh。转到根文件夹。你可以在那里克隆它。
您可以将项目文件保存在那里。即使您将 laravel 项目中的 puclic 文件夹的内容顶部复制到 public_html 文件夹,并编辑 index.php 以便所有资源都必须指向 public_html 之外的项目文件夹
为了更新您的项目,您必须再次从 ssh 克隆它
【讨论】:
【参考方案3】:第 1 步:配置
在本地安装Laravel。 将public
文件夹重命名为public_html
在App/Providers/AppServiceProvider.php
中添加Schema::defaultStringLength(191);
到boot function。
初始化 git 并提交。
第 2 步:推送到 GitHub
在 github 中创建一个 repo
将刚刚创建的本地 repo 推送到 GitHub。
第 3 步:服务器管理
从本地终端使用 SSH 登录
将目录更改为正确的域(如果您有很多域)
运行ls
命令应该返回public_html
(仅在根目录下没有其他文件的情况下,如果有备份并删除它们)
备份并删除 public_html 目录。 rm -rf public_html
基本上你所有的数据都在 public_html/ 目录中
运行git clone YOUR-REPO@git ./
有用的链接:
https://www.hostinger.in/tutorials/ssh/ https://www.hostinger.in/tutorials/how-to-connect-to-your-account-using-putty https://www.youtube.com/watch?v=hQWRp-FdTpc&t=2302s【讨论】:
以上是关于如何使用 git 将我的 Laravel 项目部署到 Hostinger 的根文件夹?的主要内容,如果未能解决你的问题,请参考以下文章
如何将我的 laravel 5.0 项目直接升级到 5.4?
如何在 VPS 上部署 Laravel 项目以及如何管理更改?
“数据库主机数组为空。”在 AWS Elastic Beanstalk 上部署 Laravel 项目后