返回顶部
首页 > 资讯 > 后端开发 > PHP编程 >nginx路由配置取消index.php
  • 200
分享到

nginx路由配置取消index.php

2023-05-22 20:05:51 200人浏览 独家记忆
摘要

在WEB服务器中,常常会遇到一些无法找到特定文件或目录的情况。这时,我们往往会默认使用index.html或index.PHP作为默认文件来解决这个问题。而在Nginx中,index.php是默认文件之一。然而,有时候我们并不想在URL中显

WEB服务器中,常常会遇到一些无法找到特定文件或目录的情况。这时,我们往往会默认使用index.html或index.PHP作为默认文件来解决这个问题。而在Nginx中,index.php是默认文件之一。

然而,有时候我们并不想在URL中显示index.php,这个在美化URL或提升网站安全方面都有一定意义。那么,如何在Nginx中取消index.php呢?

一、修改Nginx配置文件

如果你已经安装了Nginx,并且想要取消index.php的话,我们需要修改Nginx配置文件。在ubuntu系统中,Nginx配置文件的路径为“/etc/nginx/sites-available/default”。

在该文件中找到“index”指令,即:

index index.html index.htm index.nginx-debian.html;

我们需要将其中的“index.php”删除,变成:

index index.html index.htm index.nginx-debian.html;

或者你想让index.php排在后面,这时你可以将其放置在最后面:

index index.html index.htm index.nginx-debian.html index.php

二、配置Nginx虚拟主机

在Nginx中,每个网站都会有一个虚拟主机。虚拟主机可以为每个不同的网站提供独立的环境,以便于为每个网站设定不同的功能。这里我们需要为每个虚拟主机分别配置取消index.php。

1、打开Nginx的虚拟主机配置文件

sudo nano /etc/nginx/sites-available/default

2、取消虚拟主机中的index.php

server {
  listen 80 default_server;
  listen [::]:80 default_server;

  root /var/www/html;

  # 列出默认文件
  index index.html index.htm;

  # 取消index.php,即移除它
  location / {
    try_files $uri $uri/ =404;
  }

  # 处理PHP脚本
  location ~ .php$ {
    include snippets/fastcgi-php.conf;
    fastcgi_pass unix:/run/php/php7.4-fpm.sock;
  }

  # 处理网站资源
  location ~* .(js|CSS|png|jpg|jpeg|gif|ico)$ {
    expires 30d;
    add_header Cache-Control "public, no-transfORM";
  }

  # 处理网站图标
  location /favicon.ico {
    access_log off;
    log_not_found off;
  }
}

在上面的配置文件中,我们取消了index.php并设置了其他的默认文件。同时,我们在location块中,通过try_files指令来验证URL是否存在,如不存在则返回404错误。

三、适当修改nginx.conf

在Nginx中,也可以通过修改nginx.conf来取消index.php的显示。我们需要在Http块中添加一个指令:

http {
    ...

    # 将index.php从默认文件列表中删除
    index  index.html index.htm;

    # 取消index.php
    location / {
        try_files $uri $uri/ /index.php?$query_string;
    }

    ...
}

在以上配置中,我们通过将index.php从默认文件列表中删除,然后在location块中通过try_files指令验证URL是否存在,如果不存在,则使用”index.php”文件。

四、通过.htaccess取消index.php

如果你使用的是Nginx作为Web服务器,它不支持.htaccess文件,那么你可以使用一个相似的文件:.user.ini。.user.ini是一个仅支持PHP的htaccess文件。通过它,可以设置PHP的配置信息。将如下的文件存储为.user.ini即可:

; PHP settings:
cgi.fix_pathinfo = 0
cgi.fix_pathinfo = false
cgi.fix_pathinfo = off

; nginx settings:
try_files $uri $uri/ /index.php?$query_string;

; User-defined settings:
index index.php index.html index.htm

其中,我们通过尝试文件指令try_files来验证URL是否存在,如果不存在则使用”index.php”文件。同时,我们设置了其他的默认文件。

五、总结

本文介绍了四种可能的方法来取消nginx中的index.php。你可以根据你自己网站的需求,使用其中一个或多个方法来达到自己的目的。无论使用哪种方法,都是非常简单和快速的。你可以为你的网站提供一个更加人性化的URL,从而吸引更多的访问者,并且提升你的网站的SEO效果。

以上就是nginx路由配置取消index.php的详细内容,更多请关注编程网其它相关文章!

--结束END--

本文标题: nginx路由配置取消index.php

本文链接: https://www.lsjlt.com/news/216428.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • nginx路由配置取消index.php
    在Web服务器中,常常会遇到一些无法找到特定文件或目录的情况。这时,我们往往会默认使用index.html或index.php作为默认文件来解决这个问题。而在Nginx中,index.php是默认文件之一。然而,有时候我们并不想在URL中显...
    99+
    2023-05-22
  • nginx路由配置怎么转发
    在nginx中配置路由转发可以使用`location`指令来实现。下面是一个示例配置:```server {listen 80;se...
    99+
    2023-09-14
    nginx
  • phpstudy配置tp6路由出错nginx: [emerg] unknown directive
    当我们把TP6手册的nginx配置代码复制到nginx.htaccess文件中,重启本地nginx的时候,老是显示这个错误,原因:nginx.htaccess文件不能有空格,仔细检查哪里有空格,...
    99+
    2023-09-08
    nginx tp6 tp6路由 php
  • nginx路由匹配规则解析
    一、规则分类 = 精确匹配             (优先级最高)^~ 精确前缀匹配         (优先级仅次于=)~ 区分大小写的正则匹配   (优先级次于^~)~* 不区分大小写的正则匹配   (...
    99+
    2023-09-25
    服务器 运维 nginx Powered by 金山文档
  • laravel路由配置
    在laravel框架中,如何访问指定控制器中的信息内,在laravel框架中如果你想要访问指定的控制器内的方法时,你需要进行路由注册,只有进行过路由注册的地址才能够访问,不然的话会显示404,那么如何进行路由注册呢,下面的内容就是如何进行路...
    99+
    2023-09-02
    laravel php 前端 Powered by 金山文档
  • Nginx 路由转发和反向代理location配置实现
    Nginx 配置的三种方式 第一种直接替换 location 匹配部分 第二种 proxy_pass 的目标地址,默认不带 /,表示只代理域名,url 和参数部分不会变(把请求的 ...
    99+
    2024-04-02
  • vue如何配置路由
    在vue中配置路由的方法:1.新建项目,引入vue和vue-router;2.使用Vue.use方法注册路由;3.执行代码配置路由;具体步骤如下:首先,在新建一个html项目,并在项目中引入vue和vue-router;import Vue...
    99+
    2024-04-02
  • spring cloud getway路由配置
    Spring Cloud Gateway是一个基于Spring Framework 5,Spring Boot 2和Project ...
    99+
    2023-09-13
    Spring
  • h3c路由器ssh配置
    1.在用户使用SSH登录交换机时,交换机对所要登录的用户使用密码对其进行身份验证生成RSA和DSA密钥对[H3C]public-key local create rsa[H3C]public-key local create dsa2.设置...
    99+
    2023-01-31
    路由器 h3c ssh
  • windows 配置永久路由
    背景 因为公司都是使用内网,插入网线使用内网后无法内外网同时使用,那么如何实现内外网同时使用呢?这时候需要配置永久路由 1、查看路由配置 打开命令提示符 输入:route print -4 (-4只看ipv4的路由配置) 可以看见自己配置的...
    99+
    2023-08-23
    网络 服务器 运维
  • vuejs路由的传参及路由props配置详解
    目录前言方式1-使用query方式命名路由方式2-路由的params参数query与params的区别路由的props配置路由配置的布尔模式路由配置的对象模式路由配置函数模式总结前言...
    99+
    2024-04-02
  • 怎么实现Nginx路由转发和反向代理location配置
    这篇文章主要讲解了“怎么实现Nginx路由转发和反向代理location配置”,文中的讲解内容简单清晰,易于学习与理解,下面请大家跟着小编的思路慢慢深入,一起来研究和学习“怎么实现Nginx路由转发和反向代理location配置”吧!Ngi...
    99+
    2023-06-25
  • linux静态路由的配置
    这篇文章主要介绍“linux静态路由的配置”,在日常操作中,相信很多人在linux静态路由的配置问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”linux静态路由的配置”的疑惑有所帮助!接下来,请跟着小编一起来...
    99+
    2023-06-17
  • H3C的静态路由配置
    三台路由器和两台PC机配置R1的路由<RT1>#Oct 11 20:08:28:820 2017 RT1 SHELL/4/LOGIN:  Trap 1.3.6.1.4.1.25506.2.2.1.1.3.0.1<hh3cL...
    99+
    2023-01-31
    路由 静态 H3C
  • H3C 路由器的IPSEC ××× 配置
                                                 H3C路由器的ipsec配置         两地做***的连接,一端是H3C的utm200设备,另外一端是H3C的AR18-21设备.现在网络环境如...
    99+
    2023-01-31
    路由器 H3C IPSEC
  • 用GNS3 配置静态路由
    打开  GNS3打开GNS3后  新工程是本身就有的 可以直接关掉  点击  编辑  给GNS3 装上IOS镜像文件用刚装好的ISO镜像文件路由器拖出三个路由器和两个PC机  和给PC机装上虚拟网卡拖好 拓扑图查看  路由器的端口打开  S...
    99+
    2023-01-31
    路由 静态
  • react 路由Link配置详解
    1、Link的to属性 (1)放置路由路径 (2)放置对象,且为规定格式 {pathname:"/xx",search:'?键值对',hash:"#xxx",state:{...
    99+
    2024-04-02
  • Think PHP路由配置详解
    Think PHP是一款基于PHP语言开发的开源框架,它提供了强大的路由配置功能,可以帮助开发者更好地管理网站或应用的路由规则。本文将详细解释Think PHP中路由配置的相关知识,并...
    99+
    2024-04-02
  • Linux下路由配置命令以及配置永久路由的几种方式
    这篇文章主要介绍“Linux下路由配置命令以及配置永久路由的几种方式”,在日常操作中,相信很多人在Linux下路由配置命令以及配置永久路由的几种方式问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Linux下路...
    99+
    2023-06-15
  • vue3路由配置以及路由跳转传参详解
    目录1、安装路由2、编写需要展示的路由3、配置路由3、使用路由4、編程式路由5、路由传参5、1query参数传递5、2传递params参数 6、子路由配置总结1、安装路由 ...
    99+
    2023-05-16
    vue3 路由跳转 vue3路由配置 vue跳转传参数
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作