Windows Azure Web サイトで Laravel を動かす

Windows 上で Laravel をインストールして WebMatrix を使ってデプロイ。

Laravel をインストール

Windows PowerShell で Composer を使ってインストールしましょう。

composer create-project laravel/laravel your-project-name --prefer-dist

WebMatrix で開く

WebMatrix を起動し、「開く」から「フォルダー」を選択。
インストールしたフォルダーを指定。
開く→フォルダー

Web.config を追加

このままだと index.php が public 配下にあるので動きません。
.htaccess にあたる Web.config をプロジェクト直下に追加します。
新規から適当な Web.config を選んで(PHP用はないのでどれでもいい)以下の内容で上書き。

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <system.webServer>
    <rewrite>
      <rules>
        <rule name="RewriteRequestsToPublic">
          <match url="^(.*)$" />
          <conditions logicalGrouping="MatchAll" trackAllCaptures="false">
          </conditions>
          <action type="Rewrite" url="public/{R:0}" />
        </rule>
        <rule name="Imported Rule 1" stopProcessing="true">
          <match url="^(.*)$" ignoreCase="false" />
          <conditions logicalGrouping="MatchAll">
            <add input="{REQUEST_FILENAME}" matchType="IsDirectory" negate="true" />
            <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
          </conditions>
          <action type="Rewrite" url="public/index.php/{R:1}" appendQueryString="true" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>

デプロイ

WebMatrix の「発行」を押して「Windows Azure を開始する」を選択。
サインインして、後は指示に従えばOK。
以上で Windows Azure Web サイト でサイトが公開されます。
管理画面からもアクセス等が確認できます。

【参考】
Running Laravel on Windows Azure Web Sites(英語)
web.config rewriteを使ってPublicを消す(IIS+laravelフレームワーク)


カテゴリー: Laravel タグ: , , パーマリンク