本文最后更新于 142 天前,若内容或图片失效,请留言反馈。部分素材来自网络,若不小心影响到您的利益,请联系我们删除。
问题:
LNMP搭配的Linux环境,文件夹下 index.html、index.htm、index.asp
等文件不能被自动调出,也就是应该输入 www.xxx.com/go/q 即可自动跳转到 www.xxx.com/go/q/index.html ,而LNMP环境下,wordpress 伪静态文件导致默认首页不生效。
解决:
Winscp 连接后,到 /user/local/nginx/conf/
目录下找到 wordpress.conf
文件,将文件内容替换为:
location / {
if (!-e $request_filename) {
rewrite ^.+/?(/wp-.*) $1 last;
rewrite ^.+/?(/.*\.php)$ $1 last;
rewrite ^(.+)$ /index.php?q=$1 last;
}
}
修改后保存即可。保存后还没生效,需要 SSH 链接后给予重载命令才会生效。
service nginx reload
扩展阅读:WordPress 伪静态规则 Apache & Nginx
Nginx 伪静态规则
打开 nginx.conf
或者某个站点的配置环境,比如 5iehome.com.conf
(不同人配置的不一样),在 server { }
大括号里面添加下面的代码:
location / {
try_files $uri $uri/ /index.php?$args;
}
# Add trailing slash to */wp-admin requests.
rewrite /wp-admin$ $scheme://$host$uri/ permanent;
保存,重启 Nginx 即可。
注:如果以上规则不适用,请自己查看WP官方文档:https://codex.wordpress.org/Nginx
Apache 伪静态规则
新建一个 htaccess.txt
文件,添加下面的代码:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
然后上传到 WordPress
站点的根目录,重命名为 .htaccess
即可。
【END】