9

假设我有一个网站http://www.example.com

如何为此页面创建更多子页面,即

www.example.com/faq

www.example.com/contact

等等

4

3 回答 3

14

您需要为此实例创建名为 faq.html 和 contact.html 的新 HTML 文件。<a>然后,您可以使用标签链接到这些页面。

编辑
五年后,这个答案已经开始得到支持,但不像这里更长的答案那么完整。以下是更多细节:

当您创建额外的 HTML 文件并访问它们时,您会看到 URL 还包含.html-part。这是大多数人不想要的。如果您使用的是网络服务器(本地或第三方主机),则有多种方法可以摆脱扩展 - 其中一种不需要服务器端脚本,并且已记录在Stephen 的评论中

您所做的是添加具有适当名称( 、 等)的文件夹设置好文件夹后,您所要做的就是将索引文件放入其中()。这些索引文件应包含其各自父文件夹的内容。faqcontactindex.html

本质上,这是重复创建网站根位置的过程,但针对子文件夹。您会看到,您通常从一个名为 的根文件夹开始public_html,其中有一个索引文件。网络服务器自动提供索引文件

public_html/index.html     -> example.com/index.html
                           -> example.com/

public_html/faq/index.html -> example.com/faq/index.html
                           -> example.com/faq/  ←  

如您所见,完成后,您可以访问

www.example.com/faq

代替

www.example.com/faq/index.html

就像您可以访问一样

www.example.com

代替

www.example.com/index.html

如果你觉得你想要更细粒度的控制,你最好使用服务器端脚本。无论您使用哪种服务器语言,您都可以完全控制人们在哪里导航以及他们可以看到什么,无论请求是什么样的。

如果您使用的是 Apache 服务器,则可以查看.htaccess文件是什么,尽管 IMO 编写和调试它们是艰巨的。

于 2014-07-03T00:24:22.120 回答
6

这完全取决于您的网络服务器。您的网络服务器负责将 URL 路径路由到要显示的实际内容。但是,如果您只有静态 HTML 文件(专业网站倾向于使用某种模板语言的 HTML 模板,这些模板使用某些服务器端编程语言和模板引擎填充来自数据库和其他来源的数据),大多数 Web 服务器会,使用默认配置,将子路径路由到与路径同名的目录中的“index.html”文件。但是,这确实因 Web 服务器和 Web 服务器以及配置而异。

换句话说,对于一个简单的网站,这通常就足够了:

website_folder/
   index.html <- this is the homepage
   faq/
     index.html <- this is served from "/faq" and from "/faq/index.html"
   contact/
     index.html <- this is served from "/contact" and "/contact/index.html"

然而,对于一个专业的网站,你会发现这样的事情更常见:

website_folder/
  templates/
    homepage.tpl <- an HTML template in some templating system.
    faq.tpl         Examples of templating engines include Jinja2,
    contact.tpl     Django, CTemplate, though there are many, many others
  static/
  config/
  lib/
  src/
  ...

网络服务器程序(在这种情况下,我假设它在“src”下,但代码的确切组织因公司而异,或从一个项目到另一个)为这些不同路径注册处理程序并且处理程序被编程填写相应的模板。

于 2014-07-03T00:24:11.520 回答
3

您只需使用您需要的内容创建另一个 html 文件并使用“a”标签链接它

<a href="about.html">about</a>

于 2014-07-03T00:24:19.573 回答