Как заставить работать ЧПУ под IIS ?
S son Проверенные Сообщения 27 Реакции 11 Баллы 8,100 6 Июл 2013 #1 Как заставить работать ЧПУ под IIS ?
Hope Premium Сообщения 48,329 Решения 22 Реакции 72,167 Баллы 40,905 6 Июл 2013 #2 Для IIS 7 есть решение... Попробуем? :)
Hope Premium Сообщения 48,329 Решения 22 Реакции 72,167 Баллы 40,905 6 Июл 2013 #4 Создайте файл web.config с таким содержимым: Код:Скопировать <?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <rules> <rule name="Imported Rule 1" stopProcessing="true"> <match url="^.*$" /> <conditions logicalGrouping="MatchAny"> <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" /> <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" /> </conditions> <action type="None" /> </rule> <rule name="Imported Rule 2" stopProcessing="true"> <match url="^(data|js|styles|install)" /> <action type="None" /> </rule> <rule name="Imported Rule 3" stopProcessing="true"> <match url="^.*$" /> <action type="Rewrite" url="index.php" /> </rule> </rules> </rewrite> <httpErrors existingResponse="PassThrough" /> </system.webServer> </configuration> И положите его в корень своего форума. Ни у всех почему-то работает это...
Создайте файл web.config с таким содержимым: Код:Скопировать <?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <rules> <rule name="Imported Rule 1" stopProcessing="true"> <match url="^.*$" /> <conditions logicalGrouping="MatchAny"> <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" /> <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" /> </conditions> <action type="None" /> </rule> <rule name="Imported Rule 2" stopProcessing="true"> <match url="^(data|js|styles|install)" /> <action type="None" /> </rule> <rule name="Imported Rule 3" stopProcessing="true"> <match url="^.*$" /> <action type="Rewrite" url="index.php" /> </rule> </rules> </rewrite> <httpErrors existingResponse="PassThrough" /> </system.webServer> </configuration> И положите его в корень своего форума. Ни у всех почему-то работает это...
S son Проверенные Сообщения 27 Реакции 11 Баллы 8,100 6 Июл 2013 #5 Нужно только еще установить mod_rewrite для IIS. Если в этом модуле импортировать .htaccess, то после удаления строк с "ошибками" получаем Код:Скопировать <?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <rules> <rule name="Импортированное правило 1" stopProcessing="true"> <match url="^.*$" /> <conditions logicalGrouping="MatchAny"> <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" /> <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" /> </conditions> <action type="None" /> </rule> <rule name="Импортированное правило 2" stopProcessing="true"> <match url="^(data/|js/|styles/|install/|favicon\.ico|crossdomain\.xml|robots\.txt)" /> <action type="None" /> </rule> <rule name="Импортированное правило 3" stopProcessing="true"> <match url="^.*$" /> <action type="Rewrite" url="index.php" /> </rule> </rules> </rewrite> </system.webServer> </configuration> и этот конфиг отличается от Вашего в части Код:Скопировать <match url="^(data/|js/|styles/|install/|favicon\.ico|crossdomain\.xml|robots\.txt)" /> На сколько это критично?
Нужно только еще установить mod_rewrite для IIS. Если в этом модуле импортировать .htaccess, то после удаления строк с "ошибками" получаем Код:Скопировать <?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <rules> <rule name="Импортированное правило 1" stopProcessing="true"> <match url="^.*$" /> <conditions logicalGrouping="MatchAny"> <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" /> <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" /> </conditions> <action type="None" /> </rule> <rule name="Импортированное правило 2" stopProcessing="true"> <match url="^(data/|js/|styles/|install/|favicon\.ico|crossdomain\.xml|robots\.txt)" /> <action type="None" /> </rule> <rule name="Импортированное правило 3" stopProcessing="true"> <match url="^.*$" /> <action type="Rewrite" url="index.php" /> </rule> </rules> </rewrite> </system.webServer> </configuration> и этот конфиг отличается от Вашего в части Код:Скопировать <match url="^(data/|js/|styles/|install/|favicon\.ico|crossdomain\.xml|robots\.txt)" /> На сколько это критично?
Hope Premium Сообщения 48,329 Решения 22 Реакции 72,167 Баллы 40,905 6 Июл 2013 #6 Не думаю, что это очень критично. Главное для начала добиться результата, а потом уже можно будет смотреть логи на наличие ошибок, если они будут...
Не думаю, что это очень критично. Главное для начала добиться результата, а потом уже можно будет смотреть логи на наличие ошибок, если они будут...
S son Проверенные Сообщения 27 Реакции 11 Баллы 8,100 6 Июл 2013 #7 ЧПУ работает. Но в стоковом .htaccess указано именно Код:Скопировать RewriteRule ^(data/|js/|styles/|install/|favicon\.ico|crossdomain\.xml|robots\.txt) - [NC,L] может данные у вашего источника устарели? :)
ЧПУ работает. Но в стоковом .htaccess указано именно Код:Скопировать RewriteRule ^(data/|js/|styles/|install/|favicon\.ico|crossdomain\.xml|robots\.txt) - [NC,L] может данные у вашего источника устарели? :)
Hope Premium Сообщения 48,329 Решения 22 Реакции 72,167 Баллы 40,905 6 Июл 2013 #8 Не знаю - может и устарели, на оф форуме брал...
S son Проверенные Сообщения 27 Реакции 11 Баллы 8,100 6 Июл 2013 #9 Сделал себе так: Код:Скопировать <?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <rules> <rule name="Imported Rule 1" stopProcessing="true"> <match url="^.*$" /> <conditions logicalGrouping="MatchAny"> <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" /> <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" /> </conditions> <action type="None" /> </rule> <rule name="Imported Rule 2" stopProcessing="true"> <match url="^(data/|js/|styles/|install/|favicon\.ico|crossdomain\.xml|robots\.txt)" /> <action type="None" /> </rule> <rule name="Imported Rule 3" stopProcessing="true"> <match url="^.*$" /> <action type="Rewrite" url="index.php" /> </rule> </rules> </rewrite> <httpErrors existingResponse="PassThrough" /> </system.webServer> </configuration> Все работает. Спасибо за помощь. ;)
Сделал себе так: Код:Скопировать <?xml version="1.0" encoding="UTF-8"?> <configuration> <system.webServer> <rewrite> <rules> <rule name="Imported Rule 1" stopProcessing="true"> <match url="^.*$" /> <conditions logicalGrouping="MatchAny"> <add input="{REQUEST_FILENAME}" matchType="IsFile" ignoreCase="false" /> <add input="{REQUEST_FILENAME}" matchType="IsDirectory" ignoreCase="false" /> </conditions> <action type="None" /> </rule> <rule name="Imported Rule 2" stopProcessing="true"> <match url="^(data/|js/|styles/|install/|favicon\.ico|crossdomain\.xml|robots\.txt)" /> <action type="None" /> </rule> <rule name="Imported Rule 3" stopProcessing="true"> <match url="^.*$" /> <action type="Rewrite" url="index.php" /> </rule> </rules> </rewrite> <httpErrors existingResponse="PassThrough" /> </system.webServer> </configuration> Все работает. Спасибо за помощь. ;)