将自己的目录提供给WordPress会导致登录循环

时间:2020-05-05 作者:sialfa

我从一个子目录中重新安装了wordpress。我已经按照官方的wordpress指南给wordpress提供了自己的目录,但现在我有一个登录循环问题,我无法登录到仪表板,每次尝试都会将我重定向到登录sreen。我怎样才能解决这个问题?

我的.htaccess 根文件

<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTPS} off 
RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteCond %{REQUEST_URI} !^/web/
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /web/$1
RewriteCond %{HTTP_HOST} ^(www.)?example.com$
RewriteRule ^(/)?$ web/index.php [L] 
</IfModule>
这是.htaccess wordpress安装目录中的文件


# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteRule ^index\\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>

# END WordPress

1 个回复
SO网友:MrWhite

。。。这是.htaccess wordpress安装目录中的文件

这当然是错误的,因为它将请求发送回根目录。您可以删除RewriteBase 指令并删除RewriteRule 替换字符串,即/index.php 应该是index.php.

例如:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
#RewriteBase /
RewriteRule ^index\\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]
</IfModule>

# END WordPress
我已经“注释掉”了RewriteBase 指令,而不是将其完全删除。

通过删除RewriteRule 替换然后将其视为相对于当前目录。即相对于/web, 因此,这会将请求重写为/web/index.php, 不/index.php. (TheRewriteBase 指令将覆盖此。)

相关推荐

我的WordPress站点被黑客入侵了-我的htaccess文件是否被攻破了?

我的Wordpress站点(在共享服务器上)被破坏。当我做谷歌网站时,它充满了垃圾邮件链接:检查。我删除了一个通过cpanel重新定向的页面,这样至少现在垃圾邮件页面不再重新定向了。re direct的名称类似于我的htaccess文件中的一行:RewriteRule ^neabsmoiea.md$ \"https\\:\\/\\/post.ristourne.co\\/Paket_ch\\/\" [R=301,L] ~ 我想这意味着htaccess文件也被泄露了?如果相关的话,我的网站名称与