【发布时间】:2016-04-28 19:32:54
【问题描述】:
我正在构建一个静态站点,并尝试对代码进行一些模块化。使用 include_once 解决了我的问题,但新创建的 section.php 文件被视为服务器上的另一个 URL,恕我直言,创建了 SEO 问题 - 重复内容。薄薄的理论,但仍然。 是否有任何解决方案可以使用 include_once 并将这些包含的文件标记为不存在的爬虫?
只是一个代码示例,以更好地定义问题所在。
index.php 看起来像这样:
<div id="wrapper">
<?php include_once ('header.php'); ?>
<div id="content">
<h1>Title</h1>
<p>Page content</p>
</div>
</div>
header.php 如下所示:
<div id="header">
<ul class="menu">
<li>
<a href="/">Home</a>
</li>
<li>
<a href="#">About</a>
</li>
<li>
<a href="#">Contact</a>
</li>
</ul>
</div>
因此生成的代码将呈现如下:
<div id="wrapper">
<div id="header">
<ul class="menu">
<li>
<a href="/">Home</a>
</li>
<li>
<a href="#">About</a>
</li>
<li>
<a href="#">Contact</a>
</li>
</ul>
</div>
<div id="content">
<h1>Title</h1>
<p>Page content</p>
</div>
</div>
header.php 是服务器上的另一个文件,可以被搜索引擎索引,因为它有自己的 URL。问题可能很愚蠢,可能有最简单的答案,我只是不知道是否应该使用重定向或其他一些调整。
谢谢!
【问题讨论】:
-
我不会担心在不同的网站上使用相同的标题,这不计入实际内容。
-
谢谢,听起来很公平......正如我所说,这是一个薄弱的理论
-
为了安全起见,您应该将源文件隐藏在 web 目录之外(httpdocs、http_public、web),只有引导程序 (index.php) 和前端资产需要对外部任何人可见。即使这样,ìindex.php 也应该伪装成 index.html,以帮助他们猜测。
-
所以我应该把那些文件放在 public_html 之外?在我的网络服务器的根目录中?这会产生一些路径问题吗?如果我的根结构看起来像这样:root/public_html/DOMAIN/index.php,我应该将这些文件保留在根目录中并使用
标签: php include-once