投稿 评论 顶部

宝塔面板的nginx伪静态rewrite设置、反向代理设置

佚名 网络安全

最终成功结果演示:http://ys.wjsou.com/s2/无名之辈.html

原动态地址:http://wjsou.com:8080/s2.jsp?q=无名之辈

?

参考官方原文:http://nginx.org/en/docs/http/ngx_http_rewrite_module.html

Syntax:rewrite?regex?replacement?[flag];
Default:
Context:server,?location,?if

rewrite 伪静态地址 真动态地址 标志;

示例

比如我想把真动态地址http://wjsou.com/s2.jsp/q=searchword通过伪静态地址?http://wjsou.com/s2/searchword.html访问。配置:

rewrite ^/s2/(.+?)\.html$ /s2.jsp?q=$1 last;

1.配置中正则含义:

"^"起始

"$"结束

(exp)匹配exp,并捕获文本到自动命名的组里

?".":匹配除了换行符以外的任何字符

\.转义 .

"+"(懒惰)???重复一次或更多次

"?"(占有)???重复零次或一次

"+?"??重复1次或更多次,但尽可能少重复(懒惰限定符,后面加?表示尽可能少重复)

$1表示前面正则表达式中的第一个()匹配的内容。

2.flag标志位

  • last?: 相当于Apache的[L]标记,表示完成rewrite
  • break?: 停止执行当前虚拟主机的后续rewrite指令集
  • redirect?: 返回302临时重定向,地址栏会显示跳转后的地址
  • permanent?: 返回301永久重定向,地址栏会显示跳转后的地址

?

?

另外,宝塔面板的反向代理设置

我把80端口用作php,8080端口用作jsp。比如访问ys.wjsou.com跳到wjsou.com:8080,设置如下(如图)

目标URL:http://wjsou.com:8080

发送域名:wjsou.com:8080

内容替换:

启用反向代理? ? 开启缓存