如果不使用二级目录作为主站,那么你访问的时候永远要在后面的链接加一个 /wp 例如,你的域名是 yourdomain.com, 但是你需要访问 yourdomain.com/wp, 虽然这部可以用重定向解决,但是当你点击你的网站标题回到首页的时候还是会有 /wp 在域名的后面飘荡。于是我进入了管理面板,选择在常规 --> 链接里面,将我原来的 yourdomain.com/wp 改成了 yourdomain.com。重新登录后台发现无法登录了。浏览器后面返回 reauth=1 首先我们要进入文件管理,public_html 文件夹中,然后点击右上角的齿轮⚙,选择显示隐藏文件 (dotfiles),在其目录下会出现.htaccess 文件,将光标移动到.htaccess 上,鼠标右击选择 Edit 编辑。 - RewriteCond %{HTTP_HOST} ^(www.)?yourdomain.com$
- RewriteCond %{REQUEST_URI} !^/wp/
- RewriteCond %{REQUEST_FILENAME} !-f
- RewriteCond %{REQUEST_FILENAME} !-d
- RewriteRule ^(.*)$ /wp/$1
- RewriteCond %{HTTP_HOST} ^(www.)?yourdomain.com$
- RewriteRule ^(/)?$ wp/index.php [L]
解决这个后,如果你修改了 WordPress 的设置 --> 常规 -->WordPress 地址(URL)将后面的二级目录去掉,你会发现你无法登录后台了... 也就是前言所出现的浏览器后面返回 reauth=1,这里有三种办法解决 简单粗暴的重装,不要用二级目录踩坑打开数据库,将你修改的 WordPress 的链接改回来看下面的操作/wp-includes/pluggable.php 并修改
大约在 929 行的时候会有一行这样的代码 - setcookie($auth_cookie_name, $auth_cookie, $expire, ADMIN_COOKIE_PATH, COOKIE_DOMAIN, $secure, true);
将上面的代码替换成如下:- setcookie($auth_cookie_name, $auth_cookie, $expire, SITECOOKIEPATH, COOKIE_DOMAIN, $secure, true);
如果你想用点不同风格的链接后缀,伪静态是逃不了的一关... 也是众多神仙曾经踩坑过的一关。依旧是打开 public_html 目录下的.htaccess 并编辑。 - # BEGIN WordPress
- RewriteEngine On
- RewriteBase /wp
- RewriteRule ^index\.php$ – [L]
- RewriteCond %{REQUEST_FILENAME} !-f
- RewriteCond %{REQUEST_FILENAME} !-d
- RewriteRule . wp/index.php [L]
- # END WordPress
wp 需要修改成你自己的安装 WordPress 的二级目录。
|