nginx $document_uri 参数使用

$document_uri  表示访问的url 
现在我的需求是,访问 www.abc.com  请求到 www.abc.com/abc/
在nginx配置文件中加入

if ($document_uri !~ ‘abc‘)
{
rewrite ^/(.*)$ http://www.abc.com/abc/$1 permanent;
}

而不是单独加一句  rewrite ^/(.*)$ http://www.abc.com/abc/$1 permanent;
如果只加rewrite 规则,而不限定条件,那么会造成死循环。  会访问到   http://www.abc.com/abc/abc/abc/abc/....

时间: 2024-12-26 08:24:42

nginx $document_uri 参数使用的相关文章

nginx高级配置

1. 配置第二个虚拟主机可以在nginx.conf 加一行include  vhosts/*.conf;  这样,我们就可以在 /usr/local/nginx/conf/vhosts目录下创建虚拟主机配置文件了.mkdir  /usr/local/nginx/conf/vhostscd !$vim  chinaops.conf   // 加入server {    listen 80;    server_name chinaops.com www.chinaops.com www.china

nginx访问控制、rewrite应用、代理设置

 nginx访问控制.rewrite应用.代理设置 一.访问控制 在这里依然还是以default2.conf虚拟主机为例,配置文件位置default2.conf 1.允许某个ip访问 ,需要在default2.conf配置配文件中添加,具体如下图: 规则如下: allow 127.0.0.1; allow 192.168.21.97; deny all; 只允许127.0.0.1和192.168.21.97来访问,其他的全部拒绝 退出保存 1)检查配置文件 2)重置配置文件 3)测试 允许ip测

nginx访问控制、rewrite应用

nginx访问控制.rewrite应用 一.访问控制 在这里依然还是以default2.conf虚拟主机为例,配置文件位置default2.conf 1.允许某个ip访问 ,需要在default2.conf配置配文件中添加,具体如下图: 规则如下: allow 127.0.0.1; allow 192.168.21.97; deny all; 只允许127.0.0.1和192.168.21.97来访问,其他的全部拒绝 退出保存 1)检查配置文件 2)重置配置文件 3)测试 允许ip测试 [[em

2015-05-13/2015-05-15LNMP第二部分nginx、php配置

内容概要: 一. nginx.conf vim /usr/local/nginx/conf/nginx.conf //清空原来的配置,加入如下内容: [[email protected] conf]# echo  1 >  /usr/local/nginx/conf/nginx.conf user nobody nobody; worker_processes 2; error_log /usr/local/nginx/logs/nginx_error.log crit; pid /usr/lo

LNMP配置—nginx、php配置

一. nginx.conf vim /usr/local/nginx/conf/nginx.conf //清空原来的配置,加入如下内容: user nobody nobody; worker_processes 2; error_log /usr/local/nginx/logs/nginx_error.log crit; pid /usr/local/nginx/logs/nginx.pid; worker_rlimit_nofile 51200; events { use epoll; wo

Nginx的rewrite应用

Rewrite主要的功能是实现URL重写,Nginx 的 Rewrite 规则采用 PCRE Perl 兼容正则表达式的语法进行规则匹配,如相使用 Nginx 的 Rewrite 功能,在编译 Nginx 前要编译安装 PCRE 库. 一,Nginx使用if进行条件匹配 Nginx可以用if进行条件匹配,语法规则类似C if (条件){...} ( 可用于: server,location )  ## 检查一个条件是否符合,如果条件符合,则执行大括号内的语句.不支持嵌套,不支持多条件 &&

Nginx内置变量以及日志格式变量参数详解

Nginx内置变量以及日志格式变量参数详解 $args #请求中的参数值 $query_string #同 $args $arg_NAME #GET请求中NAME的值 $is_args #如果请求中有参数,值为"?",否则为空字符串 $uri #请求中的当前URI(不带请求参数,参数位于$args),可以不同于浏览器传递的$request_uri的值,它可以通过内部重定向,或者使用index指令进行修改,$uri不包含主机名,如"/foo/bar.html". $d

nginx使用arg_重写带参数url案例

需求: http[s]://weidian.com/plaza/searchAll.html?tb_search=连衣裙&type=item ->https://h5.weidian.com/m/search/searchlist/index.html?keyword=连衣裙&type=商品 http[s]://weidian.com/plaza/searchAll.html?tb_search=连衣裙&type=shop ->https://h5.weidian.co

配置安装nginx

1.解决依赖关系和优化所需的组件 编译安装nginx需要事先需要安装开发包组"Development Tools" .同时,安装pcre-devel包,用yum安装即可 安装TCMalloc和google-perftools(TCMalloc只是google-perftools的一个组件,主要是优化内存分配效率和速度的),如果是64位系统请先安装libunwind库,我是32位系统,就不安装了 下载google-perftools http://gperftools.googlecod