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

nginx的try_files指令实现隐藏index.php的重写

1.nginx的try_files指令 ,核心功能是替代rewrite,并且比rewrite更强大的是可以按顺序查找文件是否存在,如果文件都找不到才会执行最后的重定向 解决的问题是,如果一个网站的部署是如下结构...: css/ js/ index.php login.php setting.php 2.当有接口的地址是 index.php/article/2 ,这样的path_info模式时,需要隐藏掉index.php...index.php/css/ 3.此时使用try_files就能解决,它会先检查前两个是否存在,如果存在就直接访问文件和目录,如果不存在才会执行后面的重定向 try_files $uri $uri/ /...q=$uri&$args; 4.当部署wordpress在网站子目录时 /wordpress/ ,可以配合location,实现上面的try_files重定向到/wordpress/ 目录里的index.php...上 location /wordpress { try_files $uri $uri/ /wordpress/index.php?

1.6K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    vue-cli打包之后的项目在nginx的部署

    vue-cli执行 npm run build 进行打包,生成dist文件夹,把该文件夹下的文件直接复制到nginx服务器目录下,就可打开项目,但是只有首页是可以看到的,再刷新一下就404了,原因是vue...所以要在nginx服务器配置对所有的路径或者文件夹进行跳转。重定向到首页index下,这样就都能找到路由了。...rewrite ^.*$ /index.html last; } 或者: location / { try_files $uri $uri/ /index.html; } 注意在配置文件中写的时候,...,返回第一个找到的文件或文件夹(结尾加斜线表示为文件夹),如果所有的文件或文件夹都找不到,会进行一个内部重定向到最后一个参数。...需要注意的是,只有最后一个参数可以引起一个内部重定向,之前的参数只设置内部URI的指向。最后一个参数是回退URI且必须存在,否则会出现内部500错误。命名的location也可以使用在最后一个参数中。

    2K80

    部署自己的私人图床-兰空图床 Lsky Pro

    官网文档 效果图 传送门 安装 兰空图床不支持共享型虚拟主机(不支持安装拓展、修改 php.ini 等操作)安装 下载安装包 如果你不是开发者,请不要下载名称为 Source Code 的压缩包...下载地址 运行环境配置 需要关闭 open_basedir,否则会有意想不到的错误。简单来说,open_basedir 是用来限制 PHP 读取目录。...安装 nginx 或 apache,PHP 8.0.2+,然后为 php 安装上必须的拓展。...准备安装 将安装包上传至站点目录然后解压,将站点的运行目录指向程序的 public 文件夹 nginx 需要设置伪静态,内容如下 location / { try_files $uri $uri...$query_string; } 将程序所在目录的所有文件夹、子文件夹、文件的权限,用户组和所有者改为 www,权限改为 0755 通常情况下,Web 站点目录的所有者和用户组为 www:www 开始安装

    56330

    Vue+Koa2 前后端分离项目线上部署

    3.2 上传文件并修改 Nginx 配置 我这里使用 MobaXterm (顺便安利一下,这软件挺全能的,唯一缺点就是有点卡)将文件上传到服务器,最后的结构就像文章开头那样: 在 /home 路径下有两个如下的项目文件夹...那么就会用第二个选项 $uri/ 尝试再次寻找,而如果还是找不到呢,就只能使用备选的 @fallback 啦,它表示重定向到这个 fallback 指向的页面,而 fallback 具体指向哪个页面,我们可以在下面通过...前面我们在 Nginx 的文件里配置过 try_files —— 如果找不到入口文件,就会使用 fallback,返回一个默认的 index.html(或者是 404.html),但是因为向服务端请求的是...可以配置 Nginx 的文件,开启访问日志和错误日志,看看能不能从日志中找出什么问题。...尤其是静态资源引用错误的问题卡了一整天,最后才发现是 Nginx 的路径配置有问题。所幸最后算是都顺利解决了,更重要的是在这个过程中学到了很多新的东西,感觉还是挺不错的。

    2.5K30

    vue项目代码部署发布总结

    vue-router的官方给出了多种解决方案,相对于apache和iis解决方案来说,nginx是更方便的解决方案,下面也会主要就nginx的解决方案进行讲解。...为了避免浏览器刷新后向后端服务器发送请求,需要在nginx的配置文件中加上一句如下代码: location / { try_files $uri $uri/ /index.html; } try_files...$uri表示文件,$uri/表示文件,先查找$uri这个文件,如果没有就去查找$uri/这个文件夹,如果还没有就返回index.html。...如果目录中没有叫 example 的文件,try_files就会接着在硬盘里尝试查找 $uri/,即有没有名为 /$root/example/ 的目录。...流程图如下: 打包完成的项目目录不在nginx默认指向的html中,需要进行配置。 这里需要配置nginx的root选项,将其指向vue项目中的dist目录。

    1.8K20

    如何在 CentOS 8 上设置 Nginx 服务器配置块

    一、前提条件 在继续这个指南之前,请确保你满足了下面的前提条件: 指向你公共服务器 IP 的域名 在你的 CentOS 系统上安装了 Nginx 以 root 或者其他有 sudo 权限的用户身份登录...─ example3.com │ └── public_html 对于每一个被托管在服务器上的域名,我们将在/var/www目录下创建一个独立的文件夹。...在文件夹域名文件夹下,我们创建一个public_html文件夹,它将作为域名的文件根目录,并且将会存储该域名的网站文件。... 想要避免任何权限问题,修改域名的文档根目录的所有者到用户nginx: sudo chown -R nginx: /var/www/example.com...try_files $uri $uri/ =404; } } 保存文件,并且检测 Nginx 配置文件是否有语法错误: sudo nginx -t 如果没有错误,输出将会像下面这样: nginx

    2.3K10

    vue-router之hash与history,以及nginx配置

    IE 10 以后才支持 监听popstate事件 history.replaceState() 根据当前路由地址找到对应组件重新渲染 History模式的使用,以及nginx配置 History...处理方式 在nginx的html根目录部署一个项目,然后新开一个文件夹,部署另一个项目,nginx.conf location / { root html; index index.html...index.htm; try_files $uri $uri/ /index.html } try_files: $uri: 当前请求路由 这句话意思是尝试请求当前路由,如果请求不到,就返回当前目录下的..., 注意要以/结尾 root在匹配到的路径前面,增加root基础路径配置 配置完nginx.conf之后,重启nginx 问题 我的应用部署在一个子路径(/lily/)上,访问路径: https...、页面刚进入可以正常显示,刷新之后就显示404 页面刚进入是redirect指向的资源可以正常加载,刷新后404一般来说就是配置和真实的路径不符合,需要指定try_files 5、首页可以正常显示,刷新页面或者跳转到别的页面报错

    2K20

    CentOS 7使用Nginx+MariaDB+PHP安装Nextcloud 13

    需要在 /var/lib/ 目录下创建一个新的文件夹 session,并将其拥有者变更为 nginx 用户。最后启动 php-fpm 和 Nginx,并且将它们设置为随开机启动的服务。...mkdir /var/www/ unzip nextcloud-13.0.0.zip mv nextcloud/ /var/www/ 为NextCloud创建文件储存文件夹,并授予一定的权限。...) 这时则需要编辑nextcloud的配置文件,修改datadirectory指向的文件夹。...' 九、配置Nginx转发规则 我们需要在Nginx的配置文件下写入有关nextcloud的转发协议。...restart nginx 常见错误 有可能你在访问页面时可以正常显示但是提示你“内部服务器错误”,若出现这个情况有两个可能: Nginx对nextcloud文件夹的访问权限不够,使用如下操作重新给予权限

    1.6K30

    Nginx错误页面优雅显示的配置

    一.Nginx错误页面优雅显示的原因?  ...当我们访问网站时,由于特殊的原因,经常会出现诸如403,404,503等错误,这极大的影响用户的访问体验,所以我们很有必要做一下错误页面的优雅显示,以提升用户的浏览体验。...下面我们就以404错误为例,具体步骤如下:   1.创建自己的404.html页面,放在站点目录下面;   2.更改nginx.conf配置文件,在http模块中加入 fastcgi_intercept_errors.../404.html;   4.更改后检查语法/nginx/sbin/nginx -t ,并重启nginx;   现在,404错误的页面优雅显示已经配置OK了。  ...error_page  500 502 503 504  /50x.html;       error_page  403  /403.html;   注意:   在nginx中错误重定向生效的两个前提条件是

    1.6K20

    Nginx的405 not allowed错误解决

    1.首先看到的页面是nginx返回的页面,得知错误要从nginx上来解决 405 Not Allowed 的静态文件采用的是post方法,nginx是不允许post访问静态资源。...题话外,试着post访问了下www.baidu.com发现页面也是报错,可以试着用get方式访问 3.现贴出三种解决方式 1.将405错误指向成功(我采用的这种方法解决的问题) 静态server下的location...if (r->method & NGX_HTTP_POST) { return NGX_HTTP_NOT_ALLOWED; } 这一段注释掉,重新编译,不要make install编译生成的nginx...文件复制到sbin下 重启nginx 3.修改错误界面指向(网上多流传这种方式,但是没有改变请求方法,所以行不通,所以采用以下方法) upstream static_backend { server

    32.7K20
    领券