首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

NGINX + mediawiki:在index.php之上设置一个index.html (索引优先级)

NGINX是一款高性能的开源Web服务器软件,常用于反向代理、负载均衡、HTTP缓存和静态资源服务。它具有轻量级、高并发处理能力以及灵活的配置特性。

mediawiki是一种基于PHP的免费开源的维基引擎软件,主要用于创建和管理维基网站。它提供了丰富的内容编辑和版本控制功能,适用于团队协作、知识管理、文档编写等场景。

在将NGINX与mediawiki结合使用时,可以通过在index.php之上设置一个index.html的方式来调整索引优先级。具体实现如下:

  1. 在NGINX的配置文件中,找到与mediawiki相关的location块,通常是以"/wiki"开头的,例如:
代码语言:txt
复制
location /wiki {
    # 其他配置项
}
  1. 在该location块内部添加以下配置:
代码语言:txt
复制
location ~ \.php$ {
    try_files $uri $uri/ @mediawiki;
}

location = /index.html {
    try_files $uri @mediawiki;
}

location @mediawiki {
    rewrite ^/wiki(.*) /index.php?title=$1 last;
}

上述配置中,首先在以".php"结尾的请求中尝试寻找对应的文件或目录,如果找不到则转发到@mediawiki指定的位置。

其次,在请求为"/index.html"时,直接转发到@mediawiki指定的位置。

最后,定义@mediawiki位置,通过重写规则将请求转发到mediawiki的入口文件index.php进行处理。

通过这样的配置,当请求既存在对应的index.html文件又存在index.php文件时,NGINX将优先返回index.html文件,以实现索引优先级的效果。

推荐腾讯云相关产品:

  • 腾讯云服务器(CVM):提供高性能的云服务器,用于承载NGINX和mediawiki等应用。
  • 腾讯云对象存储(COS):提供高可用、高可靠的对象存储服务,用于存储mediawiki的静态资源。
  • 腾讯云内容分发网络(CDN):加速全球范围内的内容分发,提升网站访问速度和用户体验。

更多腾讯云产品信息和介绍,请访问腾讯云官方网站:https://cloud.tencent.com/

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

ubuntu14.04下安装ngnix,mediawiki,nodebb,everything,gitlab

本周折腾了以下几个东西,mediawiki(维基),nodebb(论坛),gitlab(私有git服务器)。 本来的目的是搭建一个wiki,选用了mediawiki后,使用apache搭建好了。...于是搭建了ngnix+mediawiki+nodebb+everything(这个是别人配置好的,只是ngnix中设置了代理)。 后来又添上了gitlab。整理安装记录如下。...=0 9、配置nginx 创建一个 /www 目录设置为 755 权限 mkdir /www chmod 755 /www 将网站根目录设置到/www 目录下,注意不要写成 /www/ 这种格式 vim...index.htm; 增加 index.php,即改为: index index.php index.html index.htm; 找到:location ~ .php$ { * } 区块 做如下调整...这个问题是如此之隐蔽,以至于我花了大量时间查看LOG、寻找资料和调整设置上。

2.2K10

Nginx Location和Rewrite深入剖析

Nginx Location Nginx由内核和模块组成,其中内核的设计非常微小和简洁,完成的工作也非常简单,仅仅通过查找配置文件将客户端的请求映射到一个location block,而location...是Nginx配置中的一个指令,用于访问的URL匹配,而在这个location中所配置的每个指令将会启动不同的模块去完成相应的工作。...location =/index.html {  [ configuration L2  ]  } 3.可以匹配任何请求,但是因为从 / 开始匹配,所有优先级最低。...生产环境中无需Nginx.conf配置文件中同时添加五种规则匹配,如下为企业生产环境Nginx Location部分配置代码: #匹配/,优先级最低 location / {     root /var...tid/10690/items=123,[0-9]表示任意一个数字,+表示多个,(.+)表示任何多个字符。 rewrite  ^/([0-9]+)/jj/(.+)$    /index.php?

68010
  • 2万字,实战 Docker 部署:完整的前后端,主从热备高可用服务!!

    另外图中所标注IP为作者自己虚拟机中的IP,可根据实际情况自己进行设定。 相关概念 1 LVS LVS是一个开源的软件,可以实现传输层四层负载均衡。...非抢占方式:如果 Backup 路由器工作非抢占方式下,则只要 Master 路由器没有出现故障,Backup 路由器即使随后被配置了更高的优先级也不会成为Master 路由器。...抢占方式:如果 Backup 路由器工作抢占方式下,当它收到 VRRP 报文后,会将自己的优先级与通告报文中的优先级进行比较。...局域网内的主机将虚拟路由器的IP地址设置为默认网关,通过虚拟路由器与外部网络进行通信。 虚拟路由器是工作实际的物理路由器之上的。...容器默认使用Docker0这个网桥,这个是无法自定义IP的,需要我们自己创建一个网桥,然后指定容器IP,这样容器重启之后IP会保持不变。

    2.8K30

    第二章·Nginx常用基础模块

    连接限制配置实践 一个公网Nginx中配置 http{ #http层,设置 # Limit settings limit_conn_zone $remote_addr zone=conn_zone...HTTP/1.0", host: "10.0.0.10" 5)nginx请求限制重定向(扩展) nginx请求限制的过程中,我们可以自定义一个返回值,也就是错误页面的状态码。...我们先来回顾一下http协议的连接与请求,首先HTTP是建立TCP基础之上,完成HTTP请求需要先建立TCP三次握手(称为TCP连接),连接的基础上完成HTTP的请求。...所以多个HTTP请求可以建立一次TCP连接之上, 那么我们对请求的精度限制,当然比对一个连接的限制会更加的有效,因为同一时刻只允许一个TCP连接进入, 但是同一时刻多个HTTP请求可以通过一个TCP连接进入...Nginx Location 使用Nginx Location可以控制访问网站的路径,但一个server可以有多个location配置, 多个location的优先级该如何区分 ---- Location

    36430

    一个奇葩常见的问题 nginx 403 forbidden错误

    一般来说nginx 的 403 Forbidden errors 表示你在请求一个资源文件但是nginx不允许你查看。...2.访问禁止目录浏览的目录,例:设置autoindex off后访问目录。 3.用户访问只能被内网访问的文件。 以上几种常见的需要返回 403 Forbidden 的场景。 <!...二、目录索引设置错误(index指令配置) 由于dedecms是PHP程序,当时也没注意配置如下 index index.php; 然后悲剧的事情就发生了,栏目下根本就没有php文件啊,只有index.html...当访问该网站的时,nginx 会按照index.php 的先后顺序(当然这里就一个)根目录中查找文件。如果这个文件不存在(显然不存在啊),那么nginx就会返回403 Forbidden。...于是配置成index index.html index.htm index.php; 然后nginx -s relaod 重启一下就好了。

    3.6K40

    WordPress更改固定链接404的解决办法

    WordPress 网站建设中,固定链接设置是必不可少的,好的固定链接更美观、易用、利于用户分享和搜索引擎收录,需要注意的是,要使设置的固定链接生效的前提是你的网站环境支持伪静态。...Nginx伪静态规则 打开nginx.conf或者某个站点的配置环境,比如 qq52o.me.conf(不同的网站配置不一样),server {}大括号里面添加下面的代码: location /...{ index index.html index.php; if (-f $request_filename/index.html){ rewrite (...IIS 伪静态 强烈不推荐 windows 的 IIS 服务器下安装 WordPress,因为 IIS 环境运行 PHP 程序的效率,相对同等配置下 Linux 的 Apache 和 Nginx...宝塔面板设置伪静态 如果你的服务器上安装了宝塔面板,就方便多了 宝塔面板>网站>设置>伪静态 里选择对应的伪静态规则(WordPress)并保存即可。

    7.3K51

    用腾讯轻量云搭建 MediaWiki 百科程序

    MariaDB MediaWiki 文档中是首选,因此我们将用 MariaDB 作为例子 安装 MariaDB: sudo yum install mariadb-server 启动 MariaDB...通过以 root 用户身份打开 MariaDB (sudo mysql -u root -p) 并输入以下示例中给出的命令,为 MediaWiki 创建一个数据库和一个数据库用户。...{{}} 选择设置链接,然后继续执行设置步骤。 当提示输入数据库服务器时选择 MariaDB 选项,然后输入您为 MediaWiki 创建的数据库名称、用户名和用户密码。...设置过程结束时出现提示时下载 LocalSettings.php 文件,然后将其移动或复制其内容到腾讯云轻量服务器上的 /var/www/html/wiki/LocalSettings.php。...设置权限为 664 sudo chmod 664 /var/www/html/wiki/LocalSettings.php 浏览器中再次访问 index.php 以确认 MediaWiki 已成功安装

    1.2K30

    程序员架构学习笔记——Nginx 静态文件服务配置及优化

    如果请求以 / 结尾,则 NGINX 将其视为对目录的请求,并尝试目录中查找索引文件。index 指令定义索引文件的名称(默认值为 index.html)。...$geo.html index.htm index.html; } 这里使用的 $geo 变量是通过 geo 指令设置的自定义变量。变量的值取决于客户端的 IP 地址。...要返回索引文件,NGINX 会检查它是否存在,然后对通过将索引文件的名称附加到基础 URI 上获得的新 URI 进行内部重定向。...内部重定向导致对位置的新搜索,并且可能最终位于另一个位置,如以下示例所示: location / { root /data; index index.html index.php; }...这使得 NGINX 可以 sendfile() 获取数据块之后立即在一个数据包中发送 HTTP 响应头。

    1.1K40

    typecho设置伪静态规则

    (不过很奇怪的是官方文档中是找不到这个文档页面的,当时还是索引擎中才找到的) 以下为整个过程: 正文 首先找到网站的nginx配置文件,像我这样手动安装nginx的话,配置文件应该在/etc/nginx...配置文件中加入以下的配置信息: if (-f $request_filename/index.html) { rewrite (.*) $1/index.html break; } if (-...f $request_filename/index.php) { rewrite (.*) $1/index.php; } if (!...-f $request_filename) { rewrite (.*) /index.php; } 保存文件之后重启Nginx服务器: sudo nginx -s reload 然后进入博客的后台...无法登录后台,点击前台链接或者后台登录时出现"404, not found" 这是nginx设置时没有注意支持pathinfo导致的,具体关于php pathinfo的信息可以在网上搜索到。

    50610

    ZBLOG PHP程序伪静态规则集合 - ApacheNginxIISLighttpd

    虽然老蒋部落采用的是WordPress搭建的,但是帮助客户企业网站,以及平时折腾的较多的还是ZBLOG CMS居多,前者稍许用户使用多一些而且插件和主题以及文档较多,对于一个可能比较长久的网站还是比较妥当的...无论我们使用哪种CMS建站,要么选择生成静态,要么使用伪静态URL,一来用户体验好一些,二来搜索引擎体验好。...第二、Nginx if (-f $request_filename/index.html){ rewrite (.*) $1/index.html break; } if (-f $request_filename...-f $request_filename){ rewrite (.*) /index.php; } 将文件重命名zblog.conf文件,然后放置/usr/local/nginx/conf/目录中,...总结,根据我们常用的网站环境安装和设置就可以,老蒋这边用的多的是Nginx和Apache环境。

    1.8K30

    Nginx负载均衡与反向代理

    一、nginx配置属性详细说明: #全局设置 main  # 运行用户 user www-data;     # 启动进程,通常设置成和cpu的数量相等 worker_processes  1; # ... index.html index.htm;   #定义首页索引文件的名称             fastcgi_pass  www.xx.com;             fastcgi_param... index.html index.htm;#定义首页索引文件的名称             proxy_pass  http://mysvr;#请求转向mysvr 定义的服务器列表             ...就是我的项目部署不同的服务器上,但是通过统一的域名进入,nginx则对请求进行分发,减轻了服务器的压力。     ... index.html index.htm;                 }          }     保存后重启nginx浏览器输入102.test.com,多次刷新,我们可以看到下面两种不同的信息

    959150
    领券