13

我已经阅读了很多关于在生产服务器上部署 Symfony 2 项目的文章和问题,但仍然不清楚。Symfony 项目的部署看起来就像一个地狱——没有人知道如何正确地做到这一点。我想我看到的最好的主题是部署一个 Symfony2 项目,但仍然有很多不清楚的地方。我读了它,发现在那个问题中,有人将他自己的 IP 添加到允许 IP 的列表中,但这意味着只有这个 IP 可以访问这个站点,但我需要允许每个人使用它。

以及如何使站点使用 path www.mydomen.com,而不是www.mydomen.com/web/app_dev.php/index(我可以通过 Symfony 更正路径,但它可以在托管之后app_dev.php和通过托管,但它如何在 / 之前工作app_dev.php?似乎 app-dev.php 应该始终在我的路径中)。

那么我应该如何正确地将开发的项目从本地服务器逐步转移到生产服务器呢?

4

1 回答 1

21

好的,我了解了如何在共享主机上正确部署应用程序。这里是:

  1. 这取决于您拥有的托管类型:如果您有 SSH 控制台,那么您可以在第 2 步之后在托管上进行,如果您还没有,则在本地进行:运行命令php app/console cache:clear --env=prod
  2. 假设您有托管文件夹youdomain/public_html,因此 public_html必须位于所有 Web 文件中。您必须从 Symfony 项目上传所有内容(文件夹:app、src、vendors、bin;文件:deps、deps.lock),文件夹web中的文件夹除外youdomain。文件夹中的所有内容web都应上传到文件夹public_html
  3. 检查文件夹 app/cache 和 app/logs 的 CHMOD,应该有写访问权限。
  4. 如果没有文件.htaccesspublic_html则创建它并在其中添加这样的代码:https ://raw.github.com/symfony/symfony-standard/master/web/.htaccess
  5. 现在您应该使用您在本地使用youdomain.com/index的而不是 youdomain.com/app_dev.php/index,。

如果您的站点仍然无法运行,您可以打开文件web/config.php并找到执行 IP 检查的代码,您会发现那里只有 IP 127.0.0.1,将您当前的 IP 添加到此列表并在服务器上上传新配置。然后你可以打开路径yourdomain/config.php并检查有什么问题。如果config.php显示一切正常,但您的站点仍然无法运行,您可以启用app_dev.php调试:打开app/app_dev.php并将您的 IP 添加到列表中,就像之前config.php所做的那样。现在您可以使用app_dev.php.

于 2012-09-20T08:09:08.697 回答