2015-08-26 7 views
0

У меня есть сайт на лазурном, и я пытаюсь сделать некоторые удобные URL-адреса для использования на своих сайтах.static url rewrite, используя карту rewrite не работает

Я загрузил удаленный менеджер IIS и сделал, как было объяснено here. Хотя статья с 2008 года, графический интерфейс удаленного диспетчера IIS по-прежнему почти такой же.

после определения карты переписывания, и правило, которое выглядит внутри карты, это web.config, который был сгенерирован:

<?xml version="1.0" encoding="UTF-8"?> 
<configuration> 
    <system.webServer> 
     <rewrite> 
      <outboundRules> 
       <preConditions> 
        <preCondition name="ResponseIsHtml1"> 
         <add input="{RESPONSE_CONTENT_TYPE}" pattern="^text/html" /> 
        </preCondition> 
       </preConditions> 
      </outboundRules> 
      <rewriteMaps> 
       <rewriteMap name="StaticRewrites"> 
        <add key="/niceurlpart" value="/Menu/master/#/Menu?Token=7926983e-c64e-4547-85f5-d85e3c06c7a8" /> 
       </rewriteMap> 
      </rewriteMaps> 
      <rules> 
       <rule name="Rewrite rule1 for StaticRewrites" patternSyntax="ExactMatch"> 
        <match url=".*" /> 
        <conditions> 
         <add input="{StaticRewrites:{REQUEST_URI}}" pattern="(.+)" /> 
        </conditions> 
        <action type="Rewrite" url="{C:1}" appendQueryString="false" /> 
       </rule> 
      </rules> 
     </rewrite> 
    </system.webServer> 
</configuration> 

, когда я вхожу в адресной строке: mydomain.com/niceurlpart I get: «Ресурс, который вы ищете, удален, изменилось его имя или временно недоступно».

Кроме того, когда я пытаюсь проверить шаблон внутри удаленного диспетчера IIS, он не ..

я что-то отсутствует?

ответ

0

Не уверен в синтаксисе этого в web.config, но # часть URL-адреса не доходит до сервера, поэтому использование этого правила не будет работать.

Если вы используете приложение углового типа и используете # для маршрутизации, попробуйте использовать режим HTML5, который избавится от хэша.

Если вы после SEO, вы можете google '_escaped_fragment_', чтобы получить хеш-значение на вашем сервере. Также, если SEO является вашей целью, мы используем _escaped_fragment_ вместе с этим инструментом https://prerender.io

+0

Привет, Да, синтаксис предназначен для углового. – Lichte

+0

. Дело в том, что мой оригинальный ключ =/niceparturl не является угловым и не содержит #, поэтому он должен перейти на сервер, я думаю, и тогда значение должно указывать на его другой URL-адрес. – Lichte

+0

Хорошо, можете ли вы объяснить мне случай использования ? Это не похоже на стандартную реализацию одностраничного приложения? –

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

  • Нет связанных вопросов^_^