红茶的个人站点

  • 首页
  • 专栏
  • 开发工具
  • 其它
  • 隐私政策
Awalon
Talk is cheap,show me the code.
  1. 首页
  2. 其它
  3. 正文

腾讯云博客搭建VII

2021年5月29日 325点热度 0人点赞 0条评论

今天意外发现了一位网友的来信,咨询我博客RSS订阅地址的问题,这封邮件莫名其妙地被QQ邮箱归类到了垃圾邮件,所以才看到。

其实WordPress默认是有RSS的,但并不是一般性的xxx/rss或者xxx/feed,而是?=xxx这种,因为WordPress是PHP编写的嘛,自然如此。

但是只要是用支持Apache或者Ngnix这种支持伪静态的web service架设的,就能实现上面那种伪静态。

首先需要在设置-固定链接页面选择一个固定链接进行设置:

image-20210529113045868

这时候正常情况下WordPress会在其网站根目录下创建一个用于伪静态的路径重写规则文件.htaccess,并写入数据,但如果你的网站目录权限设置的比较严格,可能就无法创建该文件,这时候就要手动创建并赋予一个权限:

#进入网站根目录
touch .htaccess
chmod -v 666 .htaccess

然后再重新在WordPress后台执行刚才的固定链接设置和保存操作。

如果一切正常的话此时就会正常写入重写规则:

cat .htaccess

应该是类似于这样的内容:

# BEGIN WordPress
# 在“BEGIN WordPress”与“END WordPress”之间的指令(行)是
# 动态生成的,只应被WordPress过滤器修改。
# 任何对标记之间的指令的修改都会被覆盖。
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

此外还需要保证Apache和Ngnix打开了重写模块,Apache2.4是默认开启的。

还需要在虚拟主机设置里加入AllowOverride All以允许目录下设置重写规则:

<Directory "/var/www/blog2">
    # Options Indexes FollowSymLinks
    # AllowOverride None
    AllowOverride All
    Require all granted
</Directory>

然后重启apache:

systemctl restart httpd

一切OK的话就能正常访问博客了,所有链接都会变成固定链接xxx/xxx的样式,当然RSS地址也会变成xxx/feed。最妙的是你之前文章中的引用链接xxx/?page=1这种,都不会受到影响,访问后会自动映射到xxx/page/1这样的静态风格的地址。

还有一个问题,如果你和我一样使用了WPS Hide Login插件来隐藏登录页面的话,是无法使用原来的链接,比如xxx/?icexmoon进行访问登录页面的,但是我尝试后发现是可以使用xxx/icexmoon进行访问的,只要去掉?符号就行。

参考资料:

  • Nginx/Apache之伪静态设置 - 运维小结

本作品采用 知识共享署名 4.0 国际许可协议 进行许可
标签: wordpress
最后更新:2021年5月29日

魔芋红茶

加一点PHP,加一点Go,加一点Python......

点赞
< 上一篇
下一篇 >

文章评论

取消回复

*

code

COPYRIGHT © 2021 icexmoon.cn. ALL RIGHTS RESERVED.
本网站由提供CDN加速/云存储服务

Theme Kratos Made By Seaton Jiang

宁ICP备2021001508号

宁公网安备64040202000141号