Действительно ли возможно сделать дружественный URL (перезапись URL) у классического asp?

Решение с открытым исходным кодом Java ПОИ Apache . Возможно, существует способ установить interop здесь, но я не знаю достаточно о Java для ответа на это.

, Когда я исследовал эту проблему, я закончил тем, что использовал блоки Interop.

5
задан Lankymart 16 January 2019 в 12:54
поделиться

6 ответов

  • Если ваше классическое приложение ASP работает на IIS7, я бы полностью предложил создать web.config и использовать функцию перезаписи URL-адресов ASP.NET. Я использую его в своих проектах, и он отлично работает!
  • Если он работает на более старом IIS, то ISAPIRewrite или IIRF . Тем не менее, я бы постарался изо всех сил перейти на IIS7, так как это упростит задачу.
3
ответ дан 18 December 2019 в 14:50
поделиться

Используйте средство перезаписи URL, такое как IIRF или IsapiRewrite , которое связывается с IIS и обрабатывается до того, как ASP / ASP.NET / PHP получит запрос.

5
ответ дан 18 December 2019 в 14:50
поделиться

IsapiRewrite , да, я согласен с этой рекомендацией.

Чтобы ответить на ваш другой вопрос, Google все равно, просто 301 перенаправит их. Убедитесь, что у вас нет дублированного контента, и даже не перенаправляйте 302. Если вы выполняете 301 редирект, Google должен сохранять ваш PageRank на одной странице. (Это то, что мне говорят гуру SEO на работе.)

0
ответ дан 18 December 2019 в 14:50
поделиться

Вам нужен модуль ISAPI. Это немного сложнее, чем перезапись URL-адресов в ASP.NET, поэтому вы можете попробовать коммерческий перезаписчик , например, этот .

Или вы можете попробовать бесплатный фильтр Ionic Isapi Rewrite Filter по адресу http://www.codeplex.com/IIRF

1
ответ дан 18 December 2019 в 14:50
поделиться

ISAPI_Rewrite v3 удовлетворит ваши потребности. Там дружелюбный менеджер и довольно простой синтаксис (в любом случае, если у вас возникнут проблемы, вы можете обратиться на их форум поддержки).

0
ответ дан 18 December 2019 в 14:50
поделиться

Вы также можете сделать это без фильтра перезаписи, используя настраиваемую страницу 404. В этом случае вы можете использовать Server.Transfer или Server.Execute для перенаправления на правильную страницу. Проблема в том, что вы теряете свой объект QueryString, делая это таким образом, но это вроде работает с небольшой любовью и объятиями.

Если вы хотите избежать Server.Transfer и др., Вы также можете обернуть все свои шаблоны в объекты и включить их все и просто вызвать функцию рендеринга в шаблоне, который вы хотите рендерить, что приведет к чрезмерным накладным расходам кода, но это легко преодолена современной мощью грубой силы сервера!

2
ответ дан 18 December 2019 в 14:50
поделиться
Другие вопросы по тегам:

Похожие вопросы: