<?xml version="1.0" encoding="UTF-8"?>
<configuration>
  <system.webServer>
    <directoryBrowse enabled="false" />
    <defaultDocument>
      <files>
        <clear />
        <add value="index.php" />
      </files>
    </defaultDocument>
    <rewrite>
      <rules>
        <rule name="Block app folders" stopProcessing="true">
          <match url="^(app|config|routes|storage|views|database|cli|tests|docs|\.env)(/|$)" />
          <action type="CustomResponse" statusCode="403" statusReason="Forbidden" statusDescription="Forbidden" />
        </rule>
        <rule name="Serve public folder" stopProcessing="true">
          <match url="^(.*)$" />
          <conditions logicalGrouping="MatchAll">
            <add input="{REQUEST_URI}" pattern="^/public/" negate="true" />
          </conditions>
          <action type="Rewrite" url="public/{R:1}" />
        </rule>
      </rules>
    </rewrite>
  </system.webServer>
</configuration>