在azure php webrole

时间:2016-02-12 08:23:24

标签: php laravel azure webrole

我想在azure webrole上设置Laravel框架并且必须更改文档根目录,但到目前为止我找不到如何做到这一点

我的部署项目文件夹:

├──webrole <- now this is document root
│  ├──app
│  ├──bin
│  ├──bootstrap
│  ├──config
│  ├──database
│  ├──public <- I want make this as document root
│  ├──resources
│  ├──storage
│  ├──tests
│  ├──vendor
│  ├──.env
│  ├──.env.example
│  ├──.gitattributes
│  ├──.gitignore
│  ├──artisan
│  ├──composer.json
│  ├──composer.lock
│  ├──gulpfile.js
│  ├──package.json
│  ├──phpspec.yml
│  ├──phpunit.xml
│  ├──readme.md
│  ├──server.php
│  ├──Web.cloud.config
│  └──Web.config
├──deploymentSettings.json
├──ServiceConfiguration.Cloud.cscfg
├──ServiceConfiguration.Local.cscfg
├──ServiceDefinition.csdef

我发现了这个Change approot path of Windows Azure WebRole,但这是一个很老的问题而且没有得到批准的答案

我发现的唯一一种解决方法是使用重写规则,但我认为这不安全......

1 个答案:

答案 0 :(得分:0)

与Azure Cloud Service PHP WebRole目录一样,web.configweb.cloud.config文件位于IIS上,用于配置PHP站点应用程序。

Web可以在这些文件中找到如下内容:

<system.webServer>
    <defaultDocument>
      <files>
        <clear />
        <add value="index.php" />
      </files>
    </defaultDocument>
  </system.webServer>

我们可以修改设置defaultDocument以更改laravel应用程序的文档根目录:

<system.webServer>
    <defaultDocument>
      <files>
        <clear />
        <add value="public/index.php" />
      </files>
    </defaultDocument>
  </system.webServer>