如何构建网页

时间:2017-03-31 16:38:06

标签: html iis web asp-classic

当网站上的网页结构如下时,背后的技术是什么? example.com/pages/about

当查看背后的代码时,显然有问题的页面实际上放在根目录(example.com)中,而且可以将任何内容附加到URL(例如example.com/pages/about/qwerty)和但它仍然返回正确的页面?

我根本不知道谷歌的用途。

我忘了提一下,我在经典的ASP中工作。事实证明,“语义URL”是我所寻找的。为了弥补我缺乏研究的“大拇指”,这是我今天早上提出的解决方案:

example.com/about/default.asp:

<%session("jump")="about.asp"
response.redirect "http://example.com"%>

example.com/default.asp应该包括:

<%if len(session("jump"))>0 then server.transfer(session("jump"))%>

这将使语义URL example.com/about可用,并且不会向用户显示结果页面的URL:example.com/about.asp

1 个答案:

答案 0 :(得分:2)

您正在使用经典ASP,它没有任何已建立的MVC框架,因此MVC路由可能对您没有多大帮助。你应该google的是&#34; URL重写&#34;。有一个纯ASP解决方案,它涉及创建一个自定义404页面并在条件语句中使用server.transfer(所以你开始思考正确的方向),但从实际的角度来看你可能想要什么use是IIS URL重写模块。

首先,你需要使用IIS7或更高版本,我认为我们现在可以安全地假设你,因为微软不再支持具有早期版本的操作系统。您可以通过IIS管理器添加规则,也可以将它们直接添加到web.config文件中。例如,如果您希望example.com/about将您带到about.asp,并将example.com/contact带到contact.asp(根目录中的两个文件),那么您可以将以下内容添加到{{ 1}} web.config文件的一部分

<system.webServer>

微软的IIS网站上有一个很好的教程:

https://www.iis.net/learn/extensions/url-rewrite-module/creating-rewrite-rules-for-the-url-rewrite-module