location语法location [=|~|~*|^~] /uri/ { … }= 开头表示精确匹配^~ 开头表示uri以某个常规字符串开头,理解为匹配 url路径即可。nginx不对url做编码,因此请求为/static/20%/aa,可以被规则^~ /static/ /aa匹配到(注意是空格)。~ 开头表示区分大小写的正则匹配~* 开头表示不区分大小写的正则匹配!~和!~*分别为区分大小写
编码urldecode(str)编码urldecode(str) 解码。
原创 2022-03-24 10:26:42
548阅读
对很多人而言,配置Nginx+PHP无外乎就是搜索一篇教程,然后拷贝粘贴。听上去似乎也没什么问题,可惜实际上网络上很多资料本身年久失修,漏洞百出,如果大家不求甚解,一味的拷贝粘贴,早晚有一天会为此付出代价。假设我们用PHP实现了一个前端控制器,或者直白点说就是统一入口:把PHP请求都发送到同一个文件上,然后在此文件里通过解析「REQUEST_URI」实现路由。此时很多教程会教大家这样配置Nginx
Nginx使用有两三年了,现在经常碰到有新用户问一些很基本的问题,我也没时间一一回答,今天下午花了点时间,结合自己的使用经验,把Nginx的主要配置参数说明分享一下,也参考了一些网络的内容,这篇是目前最完整的Nginx配置参数中文说明了#定义Nginx运行的用户和用户组 user www www; #nginx进程数,建议设置为等于CPU总核心数。 worker_processes 8;#全局错误
转载 2024-05-05 19:50:03
83阅读
1、修改nginx.conf配置文件http { # 中文域名解析需配置size为64 server_names_hash_bucket_size 64; client_max_body_size 10m; include mime.types; default_type application/octet-stream.... }2、转码
转载 2024-05-24 22:31:37
527阅读
在Linux操作系统上,使用PHP程序语言进行开发时,常常会涉及到对URL中文字符的支持。在处理URL中文字符时,有时候会出现乱码或者无法正确识别的情况,这就需要我们通过一些方法来进行处理。 首先,要保证Linux系统已经正确安装了PHP相关的扩展库和支持库,包括对中文字符的支持。在安装PHP的过程中,可以选择安装相关的扩展库来支持URL中文字符的处理。这里推荐安装mbstring扩展库和ico
原创 2024-05-29 10:18:25
57阅读
原料nginx --with-debug或openresty背景项目中有用户图片库需求,允许用户自定义文件夹,然后上传图片到该文件夹。 当用户自定义的文件夹为中文或者访问url中包含中文时,资源无法访问,返回404的状态码分析过程排除系统编码问题。[root@slave2 ~]# locale LANG=en_US.UTF-8 LC_CTYPE="en_US.UTF-8" LC_NUMERI
转载 2024-05-24 18:24:37
558阅读
前言 公司项目中使用了thinkphp框架,部署在apache中,很方便,可以参考thinkphp官网的doc:Apache URL重写。 而在nginx下,网上没有很具体的文档,都是根据自己项目所配置,拿到别的项目中就行不通了,所以经过本人的研究,摸透了捕鱼方法! 既然使用了thinkphp,那就要对它的URL Mode有所了解。可以参考doc:URL 模式。 准备工作 首先得做好
转载 2024-06-14 12:11:23
71阅读
一:确定你的系统是UTF编码 [root@Tserver ~]# env|grep LANG LANG=en_US.UTF-8 二:NGINX配置文件里默认编码设置为utf-8 server { listen 80; server_name .inginx.com ; index index.html index.htm index.php; root /usr/
原创 2012-09-14 14:52:10
9190阅读
测试代码$charset = 'Content-type: text/html; charset=gb2312';header($charset, t
原创 2023-04-10 11:08:48
122阅读
location /{rewrite ^/posid-([0-9]+)-([0-9]).html /index.php?m=content&a=newslis&posid=$1page=$2 last rewrite ^/([a-zA-Z]+)-([a-zA-Z]+)-([0-9]+)\.html$ /index.php?m=content&c=$1&a=
原创 2014-12-22 09:28:57
627阅读
## 使用 Docker 部署 Nginx 服务器以支持中文 URL 在互联网中,越来越多的网站开始采用中文 URL,以提升用户体验。对于刚入行的小白来说,实现这一功能可能会有些复杂,但使用 Docker 和 Nginx 其实过程并不难。接下来,我将为大家讲解如何实现 Docker Nginx 服务器支持中文 URL。 ### 整个实现流程 | 步骤 | 描述
原创 2024-08-20 10:36:25
238阅读
使用nginx的优点在于能够使用中文url 做法很简单,把文件名都修改成utf8编码就可以了! 【但apache是不需要这么麻烦的】 安装convmv,由他去转换编码: yum install convmv -y convmv -f GBK -t UTF8 -r --notest target 目标路径 其中-f是源编码,-t是目标编码,-r是递归处理目录,--notest是不移动,实际
原创 2013-04-23 13:17:06
2060阅读
指令作用匹配指定的URI(uri指路径不包含参数和域名+端口【套接字】) 语法形式官网:http://nginx.org/en/docs/http/ngx_http_core_module.html#locationSyntax:location [ = | ~ | ~* | ^~ ] u
前面介绍过nginx.conf的文件结构,大致介绍了顶层的指令和各级指令,今天给大家介绍下http模块里面的子模块server的指令location,该指令直接影响到请求路由转发规则,乃重中之重。location匹配规则介绍在server模块下,可以设置多个location模块以满足不同的需求,每个模块匹配不同的请求URI。最常用的匹配符号主要包括(=、~、~*、^~、@以及无符号匹配)。基本语法
一、重定向正则表达式匹配: * ~ 为区分大小写匹配 * ~* 为不区分大小写匹配 * !~和!~*分别为区分大小写不匹配及不区分大小写不匹配 文件及目录匹配: * -f和!-f用来判断是否存在文件 * -d和!-d用来判断是否存在目录 * -e和!-e用来判断是否存在文件或目录 * -x和!-x用来判断文件是否可执行 flag标记: * last 相当于Apache里的[L]
Http请求时,URL中作为参数值的中文字符等会被编码  1、处理编码思路:在浏览器上访问时,每个空格会被转码为 %20 ,URLencode会将每个空格转码为 + URLEncode的转码会将一些不需要转码的字符也进行转码(例如不是参数值的& : /等)对于需要的参数先进行编码。(如果是get请求可以先使用URLEncode编码后进行URL的拼接)     
转载 2024-01-24 15:50:22
110阅读
获得当前域名下的url return sprintf( '%s://%s%s', $_SERVER['REQUEST_SCHEME'], $_SERVER['HTTP_HOST'], $pictures[array_rand($pictures, 1)] );
php
原创 2022-07-22 15:03:51
79阅读
Nginx 附录A 编码风格 (100%) Nginx代码风格图示 (100%)一、基本原则K&R编码风格(偏BSD子类)。每行不能超过80列。不用TAB对齐,用空格。默认对齐单元是4个空格。除宏定义外,字母均为小写,单词间用下划线_间隔。使用C方式的注释,不得使用//形式注释。中缀运算符的前后须空一格,如3 + 2以及a > 3。逗号后须空一格,如foo(a, b, c)
基本的配置我们将修改的唯一文件是nginx.conf,其中包含Nginx不同模块的所有设置。你应该能够在服务器的/etc/nginx目录中找到nginx.conf。首先,我们将谈论一些全局设置,然后按文件中的模块挨个来,谈一下哪些设置能够让你在大量客户端访问时拥有良好的性能,为什么它们会提高性能。 nginx.conf文件中,Nginx中有少数的几个高级配置在模块部分之上。 #user nobo
转载 2024-08-10 15:12:26
62阅读
  • 1
  • 2
  • 3
  • 4
  • 5