简单记录一下wordpress配置静态链接后,页面无法重定向,网页404的解决方法。可参考的posts特别多,我罗列了一些在references里。我会从三个方面来说这个问题,(1) wordpress静态链接的配置; (2) 导致404的原因及解决方法; (3) 自定义链接插件

wordpress静态链接的配置

Wordpress可供配置的静态链接很多

自定义链接插件

custom permalinks plugin

References

  1. ubuntu 下 wordpress 设置 Permalink 为 自定义结构后出现404页面 nginx - 404 not found page for permalinks
  2. Custom Permalinks plugin
  3. multiple websites with nginx

Comment and share

前面写过文章讨论如何在Hexo搭建的网站里添加Google Analytics, 想着把百度的分析也用起来,顺便去百度站长看了一下网站的检索情况,然后就发现github把百度的爬虫给墙了,返回的都是403。解决方法有以下几种,

  1. 利用gitcafe作为github的镜像,再利用dnspod将国内访问解析到gitcafe上,国外域名解析到github上
  2. 自己利用vps搭服务器,同样用dnspod进行解析。

我准备尝试后者。

考虑到已经在vps上挂了一个网站,此刻如果镜像github的网站,就得让nginx部署两个网站,即虚拟服务器,参考了几篇博客,记录一下配置的过程。

1. 定位nginx的配置文件

如果是用lnmp安装的nginx,其配置文件在/usr/local/nginx/conf/nginx.conf中,可以通过cat查看,应该是默认配置了一个default服务器。

2. 修改./vhost/*.conf,添加多个网站配置

参考[2],按照如下过程配置,

1
2
$ cd /usr/local/nginx/cong/vhost
$ sudo vim vhost_myweb.conf

添加如下行,以网站路径为/home/wwwroot/myweb为例

1
2
3
4
5
6
7
8
9
10
11
12
13
14
server
{
listen 80;
server_name xxx.xxx.xxx;
index index.html;
root /home/wwwroot/myweb;
#php
location ~ /.php$ {
include fastcgi_params;
fastcgi_pass 127.0.0.1:9000;
fastcgi_index index.php;
fastcgi_param SCRIPT_FILENAME /home/wwwroot/myweb$fastcgi_script_name;
}
}

紧接着,修改/usr/local/php/etc/php-fpm.conf

1
2
3
[www]
# listen = /tmp/php-cgi.sock
listen = 127.0.0.1:9000

最后重启php和nginx服务,如下

1
2
3
$ sudo killall php-fpm
$ sudo systemctl start php-fpm.service
$ sudo /etc/init.d/nginx restart

到此便配置完毕。

502 bad gateway 问题

在配置过程中碰到了502 bad gateway的问题,引起502的可能因素很多,其中对于lnmp常见的就是nginx和php通信的问题。常用的通信方法有两种,分别是socket和ip:port。这里我采用的是ip:port。详细的解释可以参考这篇文章

References

[1] 如何解决百度爬虫无法爬取搭建在Github上的个人博客的问题?
[2] 在Nginx上配置多个站点
[3] nginx502错误和错误日志级别
[4] LNMP 常见502 Bad Gateway问题汇总

Comment and share

  • page 1 of 1
Author's picture

Jason Ma

We are in the same story.


Astronomer? Software engineer


Shanghai