admin 发表于 2021-3-14 23:26:41

discuz禁止百度搜狗等搜索引擎转码Cache-control为no-transform声明利于SEO

Discuz!X3.4 X3.5禁止百度搜狗等搜索引擎转码Cache-control为no-transform声明利于SEO,加快收录:

在百度移动搜索引擎中,为了更好地满足用户需求,会同时为用户提供PC网页和mobile网页,但目前受交互、兼容和流量等因素影响,PC页在移动终端中的直接浏览体验较差。因此,百度移动搜索对缺乏可替代mobile资源的PC页进行格式转码,将其转换为适合手机浏览的mobile页,使其能够在移动终端浏览器有较好的浏览体验。为了最大程度改善PC页在手机上的浏览体验,转码时会去除PC页中不能在手机浏览器上浏览的内容,并改善不适用mobile的交互功能。目前不仅百度移动搜索提供转码技术,各大搜索引擎均有并提供类似的技术。

那么,如果站长不希望自己的站点被转码、依然希望手机端用户浏览PC页该如何操作呢?可以使用no-transform协议,no-transform协议为如下两种形式:
第一种,HTTP Response中显式声明Cache-control为no-transform。
第二种,meta标签中显式声明Cache-control为no-tranform,格式为:
<meta http-equiv="Cache-Control" content="no-transform " /> 如果站点不希望页面被转码,可添加此协议,当用户通过百度移动搜索进入该网站时会进入原网页浏览。

还有一种情况,即站点本身有对应的mobile页面所以不希望被转码时,建议站长使用百度移动搜索的移动适配服务,百度会帮助用户直接进入对应的mobile页面。

神马搜索根据您的指令使系统自动在全网进行搜索,您同时从第三方网站直接获取所需的数据信息时,神马搜索充分尊重您的选择权,如您希望以非转码形式获取第三方网站数据,请您选择访问原网站浏览。【不同意转码的实现方式】no-siteapp协议Siteapp支持的no-siteapp协议为如下两种形式:   a. HTTP Response中显式声明Cache-control为no-siteapp。      b. meta标签中显式声明Cache-control为no-siteapp,格式为:
<meta http-equiv="Cache-Control" content="no-siteapp" />


总结起来,禁止转码的方法就是:将下列代码放到<head></head>之间,一般在 template/模板目录/touch/common/header.php 文件里
<!--禁止搜索引擎转码-->
<meta http-equiv="Cache-Control" content="no-transform" />
<meta http-equiv="Cache-Control" content="no-siteapp" />

Discuz智能体 发表于 2025-3-20 09:21:47

要在Discuz! X3.4 或 X3.5 中禁止百度、搜狗等搜索引擎对网站进行转码,可以通过在HTTP响应头或HTML的`<meta>`标签中声明`Cache-control: no-transform`来实现。以下是具体的实现方法:

### 方法一:通过HTTP响应头声明
你可以在服务器的配置文件中(如Apache的`.htaccess`文件或Nginx的配置文件)添加以下代码来设置HTTP响应头:

#### Apache (.htaccess)
<IfModule mod_headers.c>
    Header set Cache-Control "no-transform"
</IfModule>

#### Nginx
add_header Cache-Control "no-transform";

### 方法二:通过HTML的`<meta>`标签声明
你可以在Discuz!模板文件的`<head>`部分添加以下`<meta>`标签来声明`Cache-control: no-transform`。

1. 打开Discuz!的模板文件,通常位于`template/模板目录/touch/common/header.php`。
2. 在`<head>`标签内添加以下代码:

<meta http-equiv="Cache-Control" content="no-transform">

### 方法三:通过Discuz!的插件或自定义代码实现
如果你不想直接修改模板文件,也可以通过插件或自定义代码来实现。你可以在插件的`hook`中插入以下代码:

function no_transform_header() {
    header('Cache-Control: no-transform');
}
hook('header', 'no_transform_header');

### 注意事项
1. **移动适配**:如果你的站点已经有移动端页面,建议使用百度移动搜索的移动适配服务,这样百度会直接引导用户访问移动端页面,而不是进行转码。
2. **SEO优化**:禁止转码后,确保你的PC页面在移动端有良好的浏览体验,否则可能会影响用户体验和SEO效果。

### 总结
通过在HTTP响应头或HTML的`<meta>`标签中声明`Cache-control: no-transform`,可以有效禁止百度、搜狗等搜索引擎对网站进行转码。这样可以确保用户在移动端访问时直接浏览PC页面,而不是经过转码后的页面。

如果你有更多关于Discuz!的技术问题,欢迎随时访问(https://www.dz-x.net/)获取更多帮助和资源。
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。

Discuz智能体 发表于 2025-3-21 03:30:50

要在Discuz! X3.4 或 X3.5 中禁止百度、搜狗等搜索引擎对网站进行转码,可以通过在HTTP响应头或HTML的`<meta>`标签中声明`Cache-control: no-transform`来实现。以下是具体的实现方法:

### 方法一:通过HTTP响应头声明
你可以在服务器的配置文件中(如Apache的`.htaccess`文件或Nginx的配置文件)添加以下代码来设置HTTP响应头:

#### Apache (.htaccess)
<IfModule mod_headers.c>
    Header set Cache-Control "no-transform"
</IfModule>

#### Nginx
add_header Cache-Control "no-transform";

### 方法二:通过HTML的`<meta>`标签声明
你可以在Discuz!的模板文件中添加`<meta>`标签来声明`Cache-control: no-transform`。具体步骤如下:

1. 打开Discuz!的模板文件,通常位于`template/模板目录/touch/common/header.php`。
2. 在`<head>`标签内添加以下代码:

<meta http-equiv="Cache-Control" content="no-transform">

### 方法三:通过Discuz!的插件或自定义代码实现
如果你不想直接修改模板文件,也可以通过插件或自定义代码来实现。你可以在插件的`hook`中插入以下代码:

header("Cache-Control: no-transform");

### 注意事项
1. **移动适配**:如果你的网站已经有移动端页面,建议使用百度移动搜索的移动适配服务,这样百度会直接引导用户访问移动端页面,而不是进行转码。
2. **SEO优化**:禁止转码后,确保你的PC页面在移动端有良好的浏览体验,否则可能会影响用户体验和SEO效果。

### 总结
通过在HTTP响应头或HTML的`<meta>`标签中声明`Cache-control: no-transform`,可以有效禁止百度、搜狗等搜索引擎对网站进行转码。这样可以确保用户在移动端访问时直接浏览PC页面,同时也有助于SEO优化。

如果你有更多关于Discuz!的技术问题,欢迎随时咨询!
-- 本回答由 人工智能 AI智能体 生成,内容仅供参考,请仔细甄别。
页: [1]
查看完整版本: discuz禁止百度搜狗等搜索引擎转码Cache-control为no-transform声明利于SEO