PHPCMS V9全站整合支持https修改最全方法(2022年12月亲测最新)
https://www.cwzlk.com/cwbbs/forum.php?mod=viewthread&tid=5
1、修改phpcms/modules/admin/site.php大约45行和128行的正则- ('/http:\/\/(.+)\/$/i', $domain))
复制代码 修改为:- ('/(http|https):\/\/(.+)\/$/i', $domain))
复制代码 2、修改phpcms/modules/admin/templates/setting.tpl.php大约18行中的正则修改为:3、修改phpcms/modules/admin/templates/site_add.tpl.php大约13行中的正则修改为:4、修改phpcms/modules/admin/templates/site_edit.tpl.php大约11行中的正则修改为:5、修改phpcms/modules/link/templates/link_add.tpl.php大约10行中的正则- ^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&]*([^<>])*$
复制代码 修改为:- ^http?:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&]*([^<>])*$
复制代码 6、修改phpcms/modules/link/templates/link_edit.tpl.php大约11行中的正则- ^http:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&]*([^<>])*$
复制代码 修改为:- ^http?:\/\/[A-Za-z0-9]+\.[A-Za-z0-9]+[\/=\?%\-&]*([^<>])*$
复制代码 7、修改phpcms/modules/link/index.php大约41行和51行中的正则修改为:8、修改phpcms\libs\functions\global.func.php大约738行的正则- $url = str_replace(array('http://','//','~'), array('~','/','http://'), $url);
复制代码 修改为- $url = str_replace(array('https://','//','~'), array('~','/','https://'), $url);
复制代码 9、修改phpcms\modules\content\templates\content_list.tpl.php大约97行- elseif(strpos($r['url'],'http://')!==false)
复制代码 修改为- elseif(strpos($r['url'],'https://')!==false)
复制代码 10、修改phpcms\modules\content\templates\content_page.tpl.php大约28行- if(strpos($category['url'],'http://')===false)
复制代码 修改为- if(strpos($category['url'],'http://')===false && strpos($category['url'],'https://')===false)
复制代码 11、部分网址https:没有显示为绿色,则需要在head头部代码 加入- <meta http-equiv="Content-Security-Policy" content="upgrade-insecure-requests" />
复制代码 12、服务器是window系统的,可能会有后台设置网站网址的时候提示站点域名格式应该为“http://www.cwzlk.com/”请以“/”结束。如图:
修改文件:phpcms\modules\admin\site.php文件,大概在128行左右,edit的方法,将下面代码注释就可以,用/* */:13、到这里,可能还存在后台地址列表翻页错误,我们继续改。打开phpcms\modules\content\templates\content_list.tpl.php,大概在97行左右:- strpos($r['url'],'http://')!==false
复制代码 修改为:- strpos($r['url'],'https://')!==false
复制代码
14、后台翻页错误问题:
找到文件:phpcms\libs\functions\global.func.php,找到pageurl方法,大概796行左右,修改下面代码:- $url = str_replace(array('http://','//','~'), array('~','/','http://'), $url);
复制代码 修改为:- $url = str_replace(array('https://','//','~'), array('~','/','https://'), $url);
复制代码
15、接着修改后台设置->基本设置 对应的css、js、图片、附件URL的路径全改为https;还有后台设置-> 站点管理 里面的站点域名http改为https
16、已经整合discuz论坛的,还要检查PHPSSO整合设置,和discuz论坛管理中心UCenter通信设置,全程只需将http://改为https://
17、到此绝大部分问题已经解决,如何您的网站有调用其他站点JS或者其他图片媒体文件的,而且网址是http://开头的,则会出现问题,这里只能鼓励原创、拒绝盗用。
18、如果前期已经做了大量二次开发的,请根据需求对网站模板的header、footer等一系列文件地址、CSS、JS路径进行修改。
19、后台--内容管理:更新缓存;删除浏览器缓存!
20、后台--内容管理:再次更新缓存、更新栏目页网址、批量更新URL!不行就再来一次!。。。
如果还有问题,请回复交流!
|