请提前完成以下准备工作,再开始后续适配:
https://你的域名可以正常打开站点根目录帝国CMS有两个核心配置文件需要修改,分别是根目录和e目录下的配置文件:
用文本编辑器打开网站根目录下的/config.php,找到以下两个配置项,将原有的http替换为https,完整示例如下:
``` // 网站网址配置 $public_r['newsurl'] = 'https://你的域名/'; // 站点根网址配置 $ecms_config['cfg']['baseurl'] = 'https://你的域名/'; ```
打开/e/config/config.php,同样找到$ecms_config['cfg']['baseurl']配置项,将http修改为https,保存文件后上传覆盖服务器原有文件。
帝国CMS的内容、附件等链接都存储在数据库中,需要批量替换,无需手动修改,直接在后台执行SQL即可完成:
http://你的域名和https://你的域名替换为你自己的实际域名,执行即可:``` -- 替换新闻模型内容链接,其他模型请修改表名:下载模型为phome_ecms_download,文章模型为phome_ecms_article UPDATE phome_ecms_news SET newstext=REPLACE(newstext, 'http://你的域名', 'https://你的域名'); -- 替换栏目介绍中的链接 UPDATE phome_enewsclass SET classintro=REPLACE(classintro, 'http://你的域名', 'https://你的域名'); -- 替换公共变量中的链接 UPDATE phome_enewspubvar SET varvalue=REPLACE(varvalue, 'http://你的域名', 'https://你的域名'); -- 替换模板中的链接 UPDATE phome_enewstemplate SET templatedata=REPLACE(templatedata, 'http://你的域名', 'https://你的域名'); ```
注意:如果你使用了多个自定义模型,请逐个给对应模型的内容表执行替换命令,确保所有内容的链接都替换完成
这一步是很多教程遗漏的关键步骤,不修改会导致后台、会员无法登录:
.你的域名.com(开头带点,匹配所有子域名,不带http/https),如果是单域名直接填你的域名即可https://你的域名,点击保存配置为了保证所有访客都访问加密站点,同时避免搜索引擎收录重复内容,需要将HTTP请求301跳转到HTTPS,以下是两种主流服务器的配置:

找到你的站点配置文件,新增80端口的server块,配置如下:
```
server {
listen 80;
server_name 你的域名 www.你的域名;
return 301 https://$host$request_uri;
}
```
保存配置后重启Nginx生效。
在网站根目录的.htaccess文件中添加以下规则:
```
RewriteEngine On
RewriteCond %{HTTPS} off
RewriteRule ^(.)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
```
所有配置完成后,需要重新生成全站静态文件:
完成后依次验证以下项目:
打开浏览器开发者工具(按F12调出),切换到Console控制台,会直接提示哪个资源是HTTP加载的,找到对应内容或模板替换为HTTPS即可。
一般是Cookie作用域配置错误,清空浏览器缓存后重新登录,如果还是无法登录,可以通过修改数据库解决:打开phome_enewsconfig表,修改cookieDomain和siteurl两个字段的值,分别改为你的域名(开头带点)和https开头的完整网址即可。
是附件地址没有替换完成,重新执行数据库替换SQL,确认附件表的链接也完成替换,然后重新生成对应内容页即可。
下一篇: 帝国CMS全站静态化优化技巧












易频IT社区是综合性互联网IT技术门户网站,专注分享网络技术、服务器运维、网络安全、编程开发、系统架构、云计算、大数据等行业干货,实时更新IT行业资讯、零基础教程、实战案例,为IT从业者、技术爱好者提供专业的学习交流平台。
Copyright © 2021-2026 易频IT社区. All Rights Reserved. 备案号:闽ICP备2023013482号 网站地图