2014-12-05 7 views
0

В настоящее время я перехожу от параллелей plesk для centos к параллелям plesk для окон. Единственное, что я ударил, я понял: htaccess больше не работает. Вот мой .htaccess:Преобразование .htaccess в web.config

options -indexes +FollowSymLinks 
RewriteEngine on 


RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME}\.php -f 
RewriteRule ^(.*)$ $1.php 

RewriteRule ^(verify)/(.*)/([a-zA-Z0-9_-]+)$ validate_account.php?usr=$3&hash=$4 [QSA,L] 
RewriteRule ^(post)/([a-zA-Z0-9_-]+)$ news.php?post=$2 [NC,QSA,L] 

RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^uploads/avatars/(.+)$ ../uploads/avatars/$1 [L,NC] 

Redirect 301 /signup /register 

RewriteCond %{HTTPS} off 
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} 
RewriteCond %{HTTP_HOST} ^www\.(.+)$ [NC] 
RewriteRule^http://%1%{REQUEST_URI} [R=301,L] 

errordocument 404 /404.php 
errordocument 403 /404.php 
errordocument 500 /404.php 

allow from all 
#deny from all 
#allow from 98.115.168.25 
deny from 162.144.91.203 #attempted brute force 
deny from 74.208.100.64 #attempted brute force 
deny from 185.57.82.25 #tried to ddos 

Вот web.config я сгенерировал с сайта:

<rule name="rule 1F"> 
    <match url="^(.*)$" /> 
    <action type="Rewrite" url="/{R:1}.php" /> 
</rule> 
<rule name="rule 2F" stopProcessing="true"> 
    <match url="^(verify)/(.*)/([a-zA-Z0-9_-]+)$" /> 
    <action type="Rewrite" url="/validate_account.php?usr={R:3}&amp;hash={R:4}" appendQueryString="true" /> 
</rule> 
<rule name="rule 3F" stopProcessing="true"> 
    <match url="^(post)/([a-zA-Z0-9_-]+)$" ignoreCase="true" /> 
    <action type="Rewrite" url="/news.php?post={R:2}" appendQueryString="true" /> 
</rule> 
<rule name="rule 4F" stopProcessing="true"> 
    <match url="^uploads/avatars/(.+)$" ignoreCase="true" /> 
    <action type="Rewrite" url="/../uploads/avatars/{R:1}" /> 
</rule> 
<rule name="rule 5F"> 
    <match url="(.*)" /> 
    <action type="Rewrite" url="/https://%{HTTP_HOST}%{REQUEST_URI}" /> 
</rule> 
<rule name="rule 6F" stopProcessing="true"> 
    <match url="^" /> 
    <action type="Rewrite" url="/http://%1%{REQUEST_URI}" /> 
</rule> 

Это дает мне 500 Внутренняя ошибка сервера всякий раз, когда я пытаюсь получить доступ к сайту, любая помощь будет быть оцененным.

ответ

0

Попробуйте это и дайте мне знать

<rule name="rule 1X"> 
     <match url="^(.*)$" /> 
     <action type="Rewrite" url="/{R:1}.php" /> 
    </rule> 
    <rule name="rule 2X" stopProcessing="true"> 
     <match url="^(verify)/(.*)/([a-zA-Z0-9_-]+)$" /> 
     <action type="Rewrite" url="/validate_account.php?usr={R:3}&amp;hash={R:4}" appendQueryString="true" /> 
    </rule> 
    <rule name="rule 3X" stopProcessing="true"> 
     <match url="^(post)/([a-zA-Z0-9_-]+)$" ignoreCase="true" /> 
     <action type="Rewrite" url="/news.php?post={R:2}" appendQueryString="true" /> 
    </rule> 
    <rule name="rule 4X" stopProcessing="true"> 
     <match url="^uploads/avatars/(.+)$" ignoreCase="true" /> 
     <action type="Rewrite" url="/../uploads/avatars/{R:1}" /> 
    </rule> 
    <rule name="rule 5X"> 
     <match url="(.*)" /> 
     <action type="Rewrite" url="/https://%{HTTP_HOST}%{REQUEST_URI}" /> 
    </rule> 
    <rule name="rule 6X" stopProcessing="true"> 
     <match url="^" /> 
     <action type="Rewrite" url="/http://%1%{REQUEST_URI}" /> 
    </rule> 
+0

Реагирует с: HTTP Error 500.50 - URL Rewrite Module Ошибка. Невозможно отобразить страницу, поскольку произошла ошибка внутреннего сервера. Подробная информация об ошибке Модуль \t RewriteModule Уведомление \t BeginRequest Handler \t StaticFile Код Ошибка \t 0x800700a1 Запрошенный URL \t http://domain.com:80/ Физический путь \t C: \ Inetpub \ виртуальных доменов \ domain.com \ httpdocs Метод входа \t Пока не определено Вход пользователя \t Не определено – Steve

+0

Установили ли вы модуль перезаписи URL-адреса IIS? –

0

После установки бесплатной версии ISAPI Rewrite я был в состоянии использовать .htaccess с IIS 7.

Смежные вопросы