2013-07-24 5 views
8

Ich schrieb einfach .htaccess und teste es auf Windows Azure-Websites, aber mod_rewrite funktionierte dort nicht. Warum? Wie kann ich meinen Azure neu konfigurieren?Mod_rewrite in Azure

RewriteEngine auf AddDefaultCharset utf-8

RewriteCond% {REQUEST_FILENAME}! -f RewriteCond% {REQUEST_FILENAME}! -d

RewriteRule^test.html $ test.php?% {QUERY_STRING} [L]

+1

I-Lösung gefunden, ich verwende Web.config – user1958350

Antwort

15

.htaccess Datei kann von Azure-Websites nicht erkannt werden.

Azure-Websites werden unter Microsoft IIS ausgeführt.

IIS hat ein URL-Rewrite-Modul, sehr ähnlich zu mod_rewrite für Apache. Sie können URL-Rewrite-Regeln konfigurieren, indem Sie im Stammordner Ihrer Site eine web.config Datei haben.

Folgen Sie dem Artikel Creating Rewrite Rules und scrollen Sie nach unten zu "Die Regel in Config-Datei anzeigen", um eine Vorstellung davon zu bekommen, wie sie aussieht.

Ihre Regeln definiert sind, wird wie folgt aussehen in web.config (und höchstwahrscheinlich wie erwartet):

<rewrite> 
    <rules> 
     <rule name="Imported Rule 1" stopProcessing="true"> 
      <match url="^test.html$" ignoreCase="false" /> 
      <conditions logicalGrouping="MatchAll"> 
       <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" negate="true" /> 
       <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" negate="true" /> 
      </conditions> 
      <action type="Rewrite" url="test.php?{QUERY_STRING}" appendQueryString="false" /> 
     </rule> 
    </rules> 
</rewrite> 
+0

Ich glaube Sie eine Erweiterung installieren können, das wäre Machen Sie die htaccess-Datei zum Lesen. http://www.helicontech.com/isapi_rewrite/ ist aber nicht KOSTENLOS – Miguel