Php 将Symfony2应用程序部署到Azure Web主机

Php 将Symfony2应用程序部署到Azure Web主机,php,symfony,azure,Php,Symfony,Azure,我的目标是,上传我的项目,基本上是一个控制器,返回一个小树枝模板。就这么简单,我只是不知道如何在主机上获得它 我已经使用symfony好几个月了,所以对它还是新的。所有的托管/详细信息对我来说也是新的 让我扫兴的是我对托管网站/文件夹的理解 以及它的根是如何变蓝的/ 我用过这个网站 但是我发现很难理解 有谁有更好的站点,在如何部署方面有更明确的步骤吗?我读过很多关于公共html文件夹的书,但我以前从未听说/使用过它 如果有人能解释一下www.domain.com/web/app.php是如何工

我的目标是,上传我的项目,基本上是一个控制器,返回一个小树枝模板。就这么简单,我只是不知道如何在主机上获得它

我已经使用symfony好几个月了,所以对它还是新的。所有的托管/详细信息对我来说也是新的

让我扫兴的是我对托管网站/文件夹的理解 以及它的根是如何变蓝的/

我用过这个网站

但是我发现很难理解

有谁有更好的站点,在如何部署方面有更明确的步骤吗?我读过很多关于公共html文件夹的书,但我以前从未听说/使用过它

如果有人能解释一下www.domain.com/web/app.php是如何工作的,我知道,这就是被调用的文件,但不太确定我是否需要说调用这个文件“app.php”,或者它是否像标准网站查找“index.php”的方式


如果您不能将“wwwroot”目录的名称更改为“web”,那么您必须将symfony的配置更改为使用“wwwroot”,在此我将非常感谢您提供的任何帮助或指导,因为我有点迷路了

看看这个

我认为最简单的解决方案是使用符号链接:

某些共享主机具有公共html web目录根。将web目录从web重命名为public_html是使Symfony项目在共享主机上工作的一种方法。另一种方法是将应用程序部署到web根目录之外的目录,删除public_html目录,然后将其替换为项目中指向web的符号链接


如果无法将“wwwroot”目录的名称更改为“web”,则必须将symfony的配置更改为使用“wwwroot”

看看这个

我认为最简单的解决方案是使用符号链接:

某些共享主机具有公共html web目录根。将web目录从web重命名为public_html是使Symfony项目在共享主机上工作的一种方法。另一种方法是将应用程序部署到web根目录之外的目录,删除public_html目录,然后将其替换为项目中指向web的符号链接


通常,我们可以在本地构建项目并进行测试,然后通过Git或FTP工具部署到Azure Web应用程序上

以下是我的测试步骤:

  • 在本地建立Symfony项目,参考
  • 登录Azure预览门户,单击新建,然后单击创建
  • 创建完Web app服务后,我们可以在设置中找到MySQL连接字符串=>应用程序设置=>连接字符串点击显示连接字符串
  • 然后单击部署部分中的设置连续部署。选择源的本地Git存储库。然后在Essentials部分中,我们可以发现添加了一个Git URL。复制它。
  • 在本地symfony项目中,确保symfony存储库的根目录中有一个
    .gitignore
    文件,其中至少包含以下内容:
    
    /app/bootstrap.php.cache
    /应用程序/缓存/*
    /app/config/parameters.yml
    /应用程序/日志/*
    !app/cache/.gitkeep
    !app/logs/.gitkeep
    /app/SymfonyRequirements.php
    /建造/
    /卖主/
    /垃圾箱/
    /作曲家法尔
    /web/app_dev.php
    /网络/捆绑包/
    /web/config.php
    
  • 运行以下命令以初始化git repo并首次推送到Azure: ` 初始化 git添加。 git提交-m“初始提交” git remote add azure[远程存储库的URL] git推送azure主机

  • 登录Azure网站的Kudu控制台,网址为
    https://.scm.azurewebsites.net/DebugConsole
    ,运行以下命令:
    
    cd站点\wwwroot
    旋度-sShttps://getcomposer.org/installer |php
    php composer.phar安装
    
    现在访问
    http://.azurewebsites.net/web/app.php
    在浏览器中,我们应该可以看到项目

  • 现在我们需要配置URL重写来删除URL的
    /web/app.php
    模式。在Azure上的根目录
    /site/wwwroot
    中添加名为
    web.config
    的文件,其内容如部署到中所示。单击Azure门户上的重新启动,现在我们可以访问
    http://.azurewebsites.net

  • 顺便说一下,对于在Azure Web应用程序上部署PHP MySQL应用程序,我们可以在上获得更多信息。具体来说,Symfony指南仍然很有用,我们可以忽略启用PHP intl扩展的部分。

    通常,我们可以在本地构建项目并进行测试,然后通过Git或FTP工具部署到Azure Web应用程序上

    以下是我的测试步骤:

  • 在本地建立Symfony项目,参考
  • 登录Azure预览门户,单击新建,然后单击创建
  • 创建完Web app服务后,我们可以在设置中找到MySQL连接字符串=>应用程序设置=>连接字符串点击显示连接字符串
  • 然后单击部署部分中的设置连续部署。选择源的本地Git存储库。然后在Essentials部分中,我们可以发现添加了一个Git URL。复制它。
  • 在本地symfony项目中,确保symfony存储库的根目录中有一个
    .gitignore
    文件,其中至少包含以下内容:
    
    /app/bootstrap.php.cache
    /应用程序/缓存/*
    /app/config/parameters.yml
    /应用程序/日志/*
    !app/cache/.gitkeep
    !app/logs/.gitkeep
    /app/SymfonyRequirements.php
    /