wordpress文章链接.html怎么自动加了斜杠
1个回答
展开全部
果然给我在codex上找到了解决方案,就是简单地加一行斜杠重定向而已,方法综述如下:
1、登录shell,vim编辑Nginx配置目录(一般是在/usr/local/nginx/conf/)下的"wordpress.conf",当然如果你像我一样用的是自己写的conf文件,那就改对应的那个重定向配置文件就好。
?
1
vim /usr/local/nginx/conf/wordpress.conf
2、把官方给的那一行加到文件最后面就行了
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
location /blog/ {
if ($host != 'www.jb51.net' ) {
rewrite ^/(.*)$ //www.jb51.net/$1 permanent;
}
if (-f $request_filename/index.html){
rewrite (.*) $1/index.html break;
}
if (-f $request_filename/index.php){
rewrite (.*) $1/index.php;
}
if (!-f $request_filename){
rewrite (.*) /blog/index.php;
}
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
3、:wq保存重启nginx即可
其实你要是懒的话,直接用 "echo >>" 追加就行了= =
PS:据说 nginx不会自动在请求的最后加上一个斜线,不会自动判断请求的是一个文件还是一个目录。网上搜索 nginx 斜线,都会提到需要在请求的最后加上这个斜杠。
网上大部资料是这样写的 :
在nginx\conf\vhost.conf中的 location / {}的index index.html后面加上
?
1
2
3
if (-d $request_filename) {
rewrite ^/(.*)([^/])$ http://$host/$1$2/ permanent;
}
但如果你的网址后面带了端口的话,那么转向时还是会出现403错误。
即 $host 变量把端口弄没了,改成 $http_host 变量即可
改成如下写法即解决了所有问题
?
1
2
3
if (-d $request_filename) {
rewrite ^/(.*)([^/])$ http://$http_host/$1$2/ permanent;
}
1、登录shell,vim编辑Nginx配置目录(一般是在/usr/local/nginx/conf/)下的"wordpress.conf",当然如果你像我一样用的是自己写的conf文件,那就改对应的那个重定向配置文件就好。
?
1
vim /usr/local/nginx/conf/wordpress.conf
2、把官方给的那一行加到文件最后面就行了
?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
location /blog/ {
if ($host != 'www.jb51.net' ) {
rewrite ^/(.*)$ //www.jb51.net/$1 permanent;
}
if (-f $request_filename/index.html){
rewrite (.*) $1/index.html break;
}
if (-f $request_filename/index.php){
rewrite (.*) $1/index.php;
}
if (!-f $request_filename){
rewrite (.*) /blog/index.php;
}
}
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
3、:wq保存重启nginx即可
其实你要是懒的话,直接用 "echo >>" 追加就行了= =
PS:据说 nginx不会自动在请求的最后加上一个斜线,不会自动判断请求的是一个文件还是一个目录。网上搜索 nginx 斜线,都会提到需要在请求的最后加上这个斜杠。
网上大部资料是这样写的 :
在nginx\conf\vhost.conf中的 location / {}的index index.html后面加上
?
1
2
3
if (-d $request_filename) {
rewrite ^/(.*)([^/])$ http://$host/$1$2/ permanent;
}
但如果你的网址后面带了端口的话,那么转向时还是会出现403错误。
即 $host 变量把端口弄没了,改成 $http_host 变量即可
改成如下写法即解决了所有问题
?
1
2
3
if (-d $request_filename) {
rewrite ^/(.*)([^/])$ http://$http_host/$1$2/ permanent;
}
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询