我的知识记录

腾讯云虚拟主机搜索乱码_POST搜索乱码解决

腾讯云虚拟主机做 POST搜索乱码,先确定网站编码。用浏览器 F12 看 Response Headers 的 Content-Type charset,看页面 meta charset,看数据库表的字符集。三个一致就不用转码,不一致就在搜索处理时转成数据库编码。

PHP 搜索转码代码:$keyword = $_GET['keyword']; $keyword = mb_convert_encoding($keyword, 'UTF-8', 'auto'); auto 自动检测编码(UTF-8, GBK, BIG5)。或用 iconv('GBK', 'UTF-8//IGNORE', $keyword),//IGNORE 忽略无法转换的字符。转码后再拼 SQL 搜索。

参考(数据库连接字符集): ``` <?php // MySQLi $mysqli = new mysqli('localhost', '用户', '密码', '数据库'); $mysqli->set_charset('utf8mb4');

// PDO $pdo = new PDO('mysql:host=localhost;dbname=数据库;charset=utf8mb4', '用户', '密码');

// 旧版mysql(已废弃) mysql_query('SET NAMES utf8mb4');

-- 查看数据库字符集 SHOW VARIABLES LIKE 'character%'; -- 修改表字符集 ALTER TABLE 表名 CONVERT TO CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci; ```

搜索优化:中文搜索用 LIKE '%关键词%' 会全表扫描,数据量大了慢。可以用 MySQL 全文索引(FULLTEXT)、Sphinx、Elasticsearch 等搜索引擎。编码统一是基础,搜索引擎也要求 UTF-8。

搜索引擎蜘蛛的搜索页面不要收录。搜索结果页 URL 带参数,内容重复度高,百度收录后会判定为低质量页面。用 robots.txt Disallow 搜索页,或搜索页加 noindex。搜索功能给用户用,不给蜘蛛抓。

腾讯云虚拟主机搜索乱码_POST搜索乱码解决

标签:

更新时间:2026-08-27 10:49:09

上一篇:未知错误日志分析_从日志定位错误根源

下一篇:PowerShell批量改Word修改日期?powershell批量修改word修改日期,完整解答