当MediaWiki位于子目录中时,NGINX服务器阻塞

当MediaWiki位于子目录中时,NGINX服务器阻塞,nginx,mediawiki,Nginx,Mediawiki,MediaWiki安装在domain.com/subdirectory中,使用Apache作为服务器 找到了domain.com/subdirectory/index.php/Main_Page 前几天晚上,服务器被更改为NGINX。WordPress和XenForo工作正常,但MediaWiki的位置块工作不正常 由于我不熟悉NGINX和配置文件内部工作,我不确定如何编写位置块以获得与Apache页面布局相同的结果(index.php显示) 这是我最近的一次尝试(当然失败了) 这会写入doma

MediaWiki安装在domain.com/subdirectory中,使用Apache作为服务器

找到了domain.com/subdirectory/index.php/Main_Page

前几天晚上,服务器被更改为NGINX。WordPress和XenForo工作正常,但MediaWiki的位置块工作不正常

由于我不熟悉NGINX和配置文件内部工作,我不确定如何编写位置块以获得与Apache页面布局相同的结果(index.php显示)

这是我最近的一次尝试(当然失败了)

这会写入domain.com/subdirectory/title,而index.php丢失

文档显示写入子域,这不是我想要的。php也需要保留

感谢您提供尽可能多的信息,以解决此问题。例如,我不确定本地设置是否需要修改。

尝试添加

index  index.php index.html;
更新*

 location /subdirectory/ {
     index  index.php index.html;
 }
使用重写

rewrite ^ /index.php?$request_uri;
这将把请求转发到
/子目录/index.php?


在您的情况下,
/subdirectory/index.php?/Main\u Page

谢谢。不幸的是,这确实导致了/index.php/Main_页面的滚动,但是站点没有加载,错误失败(20:不是目录)。我在OP中发布的页面上方添加了这一行,然后修改了try_文件位置/alv/{index.php index.html;try_文件$uri$uri/alv/index.php?query_string;}是,使用上述代码将所有请求转发到index.php,在您的例子中是
/subdirectory/index.php/Main\u Page
,这是文件夹的路径,但应该是
/subdirectory/index.php?/Main\u Page
。因此,您可以使用
重写
rewrite ^ /index.php?$request_uri;