我已经自定义了WordPress地址和网站地址如下:
WordPress地址(网址)https://example.com/blog
站点地址(URL):https://example.com/blog
一切都很好,当我访问博客时,我可以看到文章,我可以导航等等,
我甚至可以通过https://example.com/blog/wp-admin访问我的wp-admin,导航 Jmeter 板等,
唯一的问题是重定向URL时,我保存的东西,如编辑主题,并点击“保存”或编辑一般设置:
例如,如果我转到设置〉常规并尝试更新任何选项,在单击**“保存”**按钮后,它会提交表单,然后将我重定向到:
如果您是一名用户,请点击这里
代替
如果您是一名用户,请点击这里
下面是我的.htaccess的外观:
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteBase /blog/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>
此外,当我去主题定制器和悬停在“退出/关闭”按钮,它显示了错误的网址(没有/博客)
奇怪的是,有另一个按钮来自定义的主题在 Jmeter 板:
当我使用此按钮并单击customizer的close/cancel时,返回的url是正确的,因此我注意到通过 Jmeter 板菜单访问customizer有一个参数?return=/wp-admin,而上面的蓝色按钮没有!
由于某些原因,如果param?return=/wp-admin在链接中,wordpress将重定向到主域并忽略子文件夹url!
1条答案
按热度按时间4uqofj5v1#
解决方案#1 -代码更改
这就是我如何解决这个问题,这可能不是正确的方式,但得到的工作完成。
如果你看到wp_referer_field的文档,你会发现它在wp-includes/functions.php中定义
所以我所做的就是
与
它在隐藏字段的value属性中有一个额外的路径,即e /blog,这解决了我的目的。
解决方案2-重写规则(未测试)
我必须执行解决方案1,因为我的主网站已经有重写规则,我无法修改它来重写www.example.com的缺失路径mysite.com/blog。可能原始问题中的重写规则也设置不正确,或者可能有其他配置文件与重写规则冲突。
如果不是这样,你应该试着按照WordPress的官方文章写正确的重写规则-
https://wordpress.org/support/article/giving-wordpress-its-own-directory/#method-i-without-url-change
即