我正在使用一种不同寻常的设置在CentOS 8 Linux上托管3个Wordpress安装。
在前面我有HAProxy(卸载TLS),然后我有Jetty configured for FastCGI php fpm和Wordpress。
我正在使用Wordpress编写一个用Pixi编写的文字游戏。js。
几年来,我一直在使用3个不同的IP地址和3个不同的域名作为我游戏的3种语言版本:en、de、ru。
然而,我的文字游戏并不成功,因此我决定放弃额外的域名和IP地址,只使用文件夹为我的游戏服务:
wordsbyfarber。com/en-wordsbyfarber。com/de
单词缩写。com/ru这很有效,我没有使用多站点,我设置了
define(\'WP_HOME\', \'https://wordsbyfarber.com/en\');
define(\'WP_SITEURL\', \'https://wordsbyfarber.com/en\');
在en/wp配置中。php(de和ru相同)以及仪表板中:
您已经可以在上面的屏幕截图中看到我的问题:
虽然面向用户的网站工作正常,但/en/wp-admin/
立即重定向到/wp-admin
这是不好的,因为我没有使用多站点。
我曾试图自己解决这个问题,并在文档中搜索了很多内容。
我还想知道,谁在做重定向,是JS还是PHP?
在我看来,这是由Wordpress的PHP代码完成的,出于某种原因,它发送了一个新的Location
标题:
如上面的屏幕截图所示,使用
wget
- 由于某种原因Wordpress会删除
/en
字符串来自
/en/wp-admin
路径并重定向到新位置。
它为什么这样做,如何阻止它?
我尝试在Wordpress源代码中搜索:
find ./en/ -iname \\*.php| xargs grep -riw redirect_to
但还没找到原因。
UPDATE: 我没有。htaccess文件,因为我正在使用Jetty configured for FastCGI 使用以下配置文件:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE Configure PUBLIC "-//Mort Bay Consulting//DTD Configure//EN"
"http://www.eclipse.org/jetty/configure_9_3.dtd">
<Configure class="org.eclipse.jetty.servlet.ServletContextHandler">
<New id="root" class="java.lang.String">
<Arg>/var/www/html/wordsbyfarber.com/en</Arg>
</New>
<Set name="contextPath">/en</Set>
<Set name="resourceBase"><Ref refid="root" /></Set>
<Set name="welcomeFiles">
<Array type="string">
<Item>index.php</Item>
<Item>index.html</Item>
</Array>
</Set>
<Call name="addFilter">
<Arg>org.eclipse.jetty.fcgi.server.proxy.TryFilesFilter</Arg>
<Arg>/*</Arg>
<Arg>
<Call name="of" class="java.util.EnumSet">
<Arg><Get name="REQUEST" class="javax.servlet.DispatcherType" /></Arg>
</Call>
</Arg>
<Call name="setInitParameter">
<Arg>files</Arg>
<Arg>$path /index.php?p=$path</Arg>
</Call>
</Call>
<Call name="addServlet">
<Arg>
<New class="org.eclipse.jetty.servlet.ServletHolder">
<Arg>default</Arg>
<Arg>
<Call name="forName" class="java.lang.Class">
<Arg>org.eclipse.jetty.servlet.DefaultServlet</Arg>
</Call>
</Arg>
<Call name="setInitParameter">
<Arg>dirAllowed</Arg>
<Arg>false</Arg>
</Call>
<Call name="setInitParameter">
<Arg>gzip</Arg>
<Arg>true</Arg>
</Call>
</New>
</Arg>
<Arg>/</Arg>
</Call>
<Call name="addServlet">
<Arg>org.eclipse.jetty.fcgi.server.proxy.FastCGIProxyServlet</Arg>
<Arg>*.php</Arg>
<Call name="setInitParameter">
<Arg>proxyTo</Arg>
<Arg>http://localhost:9000</Arg>
</Call>
<Call name="setInitParameter">
<Arg>prefix</Arg>
<Arg>/</Arg>
</Call>
<Call name="setInitParameter">
<Arg>scriptRoot</Arg>
<Arg><Ref refid="root" /></Arg>
</Call>
<Call name="setInitParameter">
<Arg>scriptPattern</Arg>
<Arg>(.+?\\\\.php)</Arg>
</Call>
</Call>
</Configure>