【问题标题】:How to move properly Symfony 2.1 project from localhost to web service provider (1and1)如何将 Symfony 2.1 项目从 localhost 正确移动到 Web 服务提供商 (1and1)
【发布时间】:2013-02-13 13:55:35
【问题描述】:

第一件重要的事情是我是 Symfony 2.1 的新用户,所以我现在还没有这样做。所以这篇文章对 Symfony 2 的其他用户来说可能是一个很好的例子。

回到主要问题。我正在尝试将我的 Symfony 项目(整个项目)导出到 1and1 Web 服务器。我已经对如何做到这一点进行了一些研究,但在我的情况下所有方法都失败了。

我做了什么:

  1. 我将所有项目文件移至服务器。
  2. 准备了一个子域(adress),指向/web文件夹并从1and1 mod_rewrite issuessymfony2 rewrite rules .htaccess app.php的教程中确认.htaccess文件。

这是我在/web 文件夹中的.htaccess 文件

<IfModule mod_rewrite.c>
    Options +FollowSymlinks
    RewriteEngine On
    Options -MultiViews

    # Explicitly disable rewriting for front controllers
    RewriteRule ^app_dev.php - [L]
    RewriteRule ^app.php - [L]

    RewriteCond %{REQUEST_FILENAME} !-f

    # Change below before deploying to production
    RewriteRule ^(.*)$ app.php [QSA,L]
    #RewriteRule ^(.*)$ app_dev.php [QSA,L]
</IfModule>

我认为它应该可以工作,但仍然没有显示Internal Server Error 500

Notice: 在阅读这篇文章时,我发现了这个article of htaccess in Symfony,但并没有提到应该移动 .htaccess 文件或只是复制到根目录。

请一步一步解释要做什么,哪些步骤对正确执行非常重要,或者我做错了什么?

【问题讨论】:

  • 我从来没有在 1n1 上移动过 sf2 项目,但迟早我会的。有没有先调用 check.php 文件?

标签: webserver symfony-2.1 move


【解决方案1】:
  1. 使用check.php,因为有 77% 的可能性是您缺少某些 php 模块。
  2. 检查app/logsapp/cache中的文件权限
  3. 下次配置一些部署脚本,部署后使用composer安装供应商 它会为您提供缺少的东西。

必填:

  • PHP 需要是 PHP 5.3.3 的最低版本
  • 需要启用 JSON
  • 需要启用 ctype
  • 您的 PHP.ini 需要有 date.timezone 设置

可选:

  • 您需要安装 PHP-XML 模块
  • 您需要至少有 2.6.21 版的 libxml
  • 需要启用 PHP 标记器
  • 需要启用mbstring函数
  • 需要启用iconv
  • 需要启用 POSIX(仅在 *nix 上)
  • Intl 需要安装 ICU 4+
  • APC 3.0.17+(或需要安装其他操作码缓存)
  • PHP.ini 推荐设置
    • short_open_tag = 关闭
    • magic_quotes_gpc = 关闭
    • register_globals = 关闭
    • session.autostart = 关闭

【讨论】:

  • 感谢 Max 的帖子。我认为我的 check.php 文件看起来是正确的,所以需要问另一个问题... PHP Symfony 的哪些模块需要强制正常工作?
  • 我已经添加了运行 sf2.1 所需的和可选的东西
猜你喜欢
  • 1970-01-01
  • 2015-05-23
  • 2017-08-25
  • 2020-07-22
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-11-24
相关资源
最近更新 更多