0

我越来越多地发现显示这种链接的网站:

website.com/page/

并测试文件夹内是否有 index.php

website.com/page/index.php

我发现总是正确的。

所以我的问题:

将所有页面放在子文件夹中是否是一种常用方法,即使它是一个您也可以轻松放入根文件夹(在本例中为 page.php)的文件,或者是否有“常见”重写?如果是,我想知道这种情况下典型的文件夹结构是什么样的。

我只是有点困惑,不想在未来的项目中“做错”。

此外:这种技术会影响 SEO 吗?

4

3 回答 3

1

如果它是一个静态站点,那么是的,在子文件夹中只有一个页面并将该页面命名为 index.html 或 index.php 是很常见的,因为大多数服务器都配置为在不显示文件名的情况下获取该页面。

这样做的一个原因是,如果将来创建的页面自然会位于该子文件夹下,那么它会使您的站点结构和站点地图保持整洁。

如今,许多 CMS 系统即时复制这种结构。

出于 SEO 目的,最好有描述性的目录名称和/或页面名称,即

news/the-title-of-my-news-article.php

希望有帮助。

于 2012-08-23T11:40:55.423 回答
1

URI 通常与文件的实际结构无关。以 Stack Overflow 为例:这个页面的 URL 是

http://stackoverflow.com/questions/12090658/is-it-typical-to-put-all-pages-in-subfolders-even-if-its-a-single-page

如果我们按照您的逻辑,这意味着 stackoverflow 有一个包含所有问题的 questions 文件夹,然后是每个(超过 200 万个)问题的特定 ID 文件夹,然后是另一个具有完整名称的文件夹,其中包含一个索引文件。

不,事实并非如此。URL 经常被重写以增加应用程序的复杂性。


至于你的具体问题,也许有特殊含义,也许没有,由站长决定。

于 2012-08-23T11:41:19.910 回答
1

即使您在点击website.com/page/index.php而不是时得到一些结果website.com/page,也不意味着那里有文件。事实上,这并不意味着甚至有一个名为“页面”的文件夹:它的力量mod_rewrite可以很容易地改变 URL

http://example.com/page/index.php

... 进入

http://example.com/index.php?controller=page

...因此每次有人查询此应用程序时都会执行一个文件(单前端控制器设计)。遵循这种方法,无需为每个可能的用户故事创建大量文件夹。

但是确实应该将 Web 应用程序组织成模块(反过来,这些模块通常组织为/modules应用程序子文件夹的子子文件夹)。有一个非常流行的范例——MVC;PHP 框架和基于这种语言的 CMS 非常常用它,但没有必要使用其中之一来遵循它。也许本教程对于向您介绍 PHP 中的 MVC 可能有用?

于 2012-08-23T11:41:26.407 回答