给一个Typecho建的站搬家,从域名A换到域名B。
起初一切顺利,搬家后在Typecho的设置里也修改了地址(Typecho使用的是绝对路径,若不修改,页面上的链接还是指向域名A)。可主题的CSS等加载的地址却还是域名A,没有变成域名B。
由于不能加载CSS、JS等,导致网页排版错乱。折腾了许久也未能解决。
而后却发现可以直接用HTTP服务器的配置来解决——Apache的一个模块,mod_substitute
,就是用于替换HTTP报文中的指定内容。
阅读官方文档后,经实践,在
SetOutputFilter SUBSTITUTE
Substitute "s|{域名A}|{域名B}|ni"
当然,要先在配置文件中,用LoadModule
加载mod_filter
和mod_substitute
。
这样一来,Apache就修改了页面上所有未修改的链接,使之指向新地址