hexo部署博客没有样式等问题
前言
- 如果想看完成过程,可直接往下看
- 如果想知道怎么修改,直接看问题解决即可
最近因为部署到github的博客实在访问实在太慢了,想要不部署到gitee去,可能速度会快很多
问题描述以及解决过程
-
当下载了hexo的第三方主题,之后,输入
hexo server
可以在本地查看效果 -
但是上传到了gitee上面我发现样式全没了
-
我在百度上找了好久的方法都没有找到,于是就查看输入了
hexo g
的时候会生成什么,发现生成了一个public的文件夹,在这的文件夹跟上传到gitee的文件一模一样 -
于是,我打开进去看,打开index文件,并且找到了引入css的标签,试着把href改成
./css/index.css
-
发现在本地打开打开就好了
-
部署到gitee也没有啥问题
-
但是图片就出问题了,头像和其他图片根本就没有出来,在本地打开文件却能看到
-
经过摸索发现了在更目录下的
_config.yml
文件里的url
和root
指定的位置,跟图片引入的位置有点关联,在之前百度的时候就有人过修改这两个的参数,_config.yml
默认的url
是http://yoursite.com
然后我发现用link引入的图片前缀都有http://yoursite.com
这也就是图片丢失的原因,在本地能看到,但是在部署上去看到的代码却是这样的
这里首先url里面的参数没有用双引号或者单引号包裹起来,其次我的./
没了,这就是部署图片丢失的原因 -
我一开始打算要不把前缀改成
https://gitee.com/.../blogs
直接引入gitee上传的资源(注意:如果这里真的想引入gitee上的文件也不是这个路劲而是https://gitee.com/...../blogs/tree/master/
可以点开上传的文件,在看地址栏就知道了),试了下,打开控制台一堆404,还是把url
和root
都改成./
发现就可以了 -
重新部署到gitee上,首先先
hexo clean
,然后hexo g
重新打包,最后hexo d
重新提交
解决方法
样式解决方法
- 第一种方法
- 输入了
hexo g
会根目录生成一个public的文件夹,这个文件夹会上传到gitee或者github上 - 找到里面
<link rel="stylesheet" href="/css/index.css">
一般都是这个,不知道个别主题会不会是其他名字 - 修改成
<link rel="stylesheet" href="./css/index.css">
也就是在css前面加上./
从本地路劲查找
- 输入了
- 第二种方法
- 在根目录下的
_config.yml
文件把里面的url
和root
都改成./
,跟图片的方法一样,这里改了图片那里应该也就可以了
- 在根目录下的
图片解决方法
- 在根目录下的
_config.yml
文件把里面的url
和root
都改成./
- 重新部署到gitee即可
总结
- 可能第三博客的修改方法各不同,需先按开发者的要求设置,再打包的时候看看public文件下的index文件引入的有没有问题,按照对应的路劲修改即可
- 这里是部署到gitee,github也差不多的
- 这是我摸索了一天摸索出来的(思考问题不够全面),如果对你有帮助请给我点个赞,或者留言啥的,有问题可在下面直接留言
来源:CSDN
作者:青空–Air
链接:https://blog.csdn.net/weixin_46187747/article/details/104575042