易支付搭建伪静态设置
Nginx:
location / {
if (!-e $request_filename) {
rewrite ^/(.[a-zA-Z0-9\-\_]+).html$ /index.php?mod=$1 last;
}
rewrite ^/pay/(.*)$ /pay.php?s=$1 last;
}
location ^~ /plugins {
deny all;
}
location ^~ /includes {
deny all;
}
解释
这段代码是Nginx的配置文件,用于配置URL重写规则。下面是对代码的解析:
“`nginx
location / {
if (!-e $request_filename) {
rewrite ^/(.[a-zA-Z0-9\-\_]+).html$ /index.php?mod=$1 last;
}
rewrite ^/pay/(.*)$ /pay.php?s=$1 last;
}
location ^~ /plugins {
deny all;
}
location ^~ /includes {
deny all;
}
“`
这段代码定义了两个`location`块,分别对应不同的URL路径。
第一个`location`块匹配以斜杠(/)开头的URL路径。在这个块中,有两个重写规则:
1. 如果请求的文件不存在(即`!-e $request_filename`为真),则将URL中的文件名提取出来,并将其作为参数传递给`index.php`脚本,并使用`last`指令进行重定向。例如,如果请求的URL是`/example.html`,那么重写后的URL将是`/index.php?mod=example`。
2. 如果请求的URL以`/pay/`开头,则将其后面的部分作为参数传递给`pay.php`脚本,并使用`last`指令进行重定向。例如,如果请求的URL是`/pay/abc123`,那么重写后的URL将是`/pay.php?s=abc123`。
第二个`location`块使用了`^~`修饰符,表示该块只匹配以`/plugins`和`/includes`开头的URL路径。在这个块中,使用了`deny all`指令,表示禁止访问该路径下的所有资源。
总结起来,这段代码的作用是对以斜杠(/)开头的URL路径进行重写,并将请求转发到相应的PHP脚本进行处理。同时,禁止访问以`/plugins`和`/includes`开头的路径下的资源。
暂无评论内容