web.config 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <configuration>
  3. <system.webServer>
  4. <!-- Don't show directory listings for URLs which map to a directory. -->
  5. <directoryBrowse enabled="false" />
  6. <rewrite>
  7. <rules>
  8. <rule name="Protect files and directories from prying eyes" stopProcessing="true">
  9. <match url="\.(engine|inc|info|install|make|module|profile|test|po|sh|.*sql|theme|tpl(\.php)?|xtmpl)$|^(\..*|Entries.*|Repository|Root|Tag|Template|composer\.(json|lock)|\.htaccess)$" />
  10. <action type="CustomResponse" statusCode="403" subStatusCode="0" statusReason="Forbidden" statusDescription="Access is forbidden." />
  11. </rule>
  12. <rule name="Force simple error message for requests for non-existent favicon.ico" stopProcessing="true">
  13. <match url="favicon\.ico" />
  14. <action type="CustomResponse" statusCode="404" subStatusCode="1" statusReason="File Not Found" statusDescription="The requested file favicon.ico was not found" />
  15. <conditions>
  16. <add input="{REQUEST_FILENAME}" matchType="IsFile" negate="true" />
  17. </conditions>
  18. </rule>
  19. <!-- Rewrite URLs of the form 'x' to the form 'index.php?q=x'. -->
  20. <rule name="Short URLs" stopProcessing="true">
  21. <match url="^(.*)$" ignoreCase="false" />
  22. <conditions>
  23. <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" />
  24. <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" />
  25. <add input="{URL}" pattern="^/favicon.ico$" ignoreCase="false" negate="true" />
  26. </conditions>
  27. <action type="Rewrite" url="index.php?q={R:1}" appendQueryString="true" />
  28. </rule>
  29. </rules>
  30. </rewrite>
  31. <httpErrors>
  32. <remove statusCode="404" subStatusCode="-1" />
  33. <error statusCode="404" prefixLanguageFilePath="" path="/index.php" responseMode="ExecuteURL" />
  34. </httpErrors>
  35. <defaultDocument>
  36. <!-- Set the default document -->
  37. <files>
  38. <remove value="index.php" />
  39. <add value="index.php" />
  40. </files>
  41. </defaultDocument>
  42. </system.webServer>
  43. </configuration>