Loading [MathJax]/jax/output/CommonHTML/config.js
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >Nginx网站重定向

Nginx网站重定向

作者头像
Tacc
发布于 2022-01-11 06:58:11
发布于 2022-01-11 06:58:11
6.7K00
代码可运行
举报
文章被收录于专栏:TaccTacc
运行总次数:0
代码可运行

1、Nginx配置多网站端口复用

(1)配置Nginx端口复用给多个网站,都可以使用80端口去进行访问。

首先需要更改/usr/local/nginx/conf/nginx.conf的配置文件,如下

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
#user  nobody;

worker_processes  1;
events {
    worker_connections  1024;
}

http {
    include       mime.types;
    default_type  application/octet-stream;
    sendfile        on;
    keepalive_timeout  65;

    server {
        listen       80;
        server_name  localhost;
        #charset koi8-r;
        #access_log  logs/host.access.log  main;
        location / {
            root   html;
            index  index.html index.htm;
        }

        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
    }    
     include /usr/local/nginx/WebServer/*.conf; #其他代码都是默认的,注意这一行,“ *.conf ”代表
                                                #这个目录下的所有.conf结尾的都是网站的配置文件
}

(2)以/usr/local/nginx/WebServer/vhostH.conf配置文件为例,具体如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
server {
     listen       80;              #监听端口
     server_name  www.liaqi.com;   #网站域名
     server_name  liaqi.com;             ##网站域名
     rewrite ^(.*) https://$server_name$1 permanent;  #进行URL重写,将http访问重写至https
}
server {
    listen 443 ssl;
    server_name www.liaqi.com;
    index index.html;
    root /usr/local/nginx/WebServer/vhostH;                     #网站目录文件
    ssl_certificate      /usr/local/nginx/sslkey/vhostH/full_chain.pem;   #证书存放路径
    ssl_certificate_key  /usr/local/nginx/sslkey/vhostH/private.key;            #证书存放路径
    ssl_session_cache    shared:SSL:1m;
    ssl_session_timeout  5m;
    server_tokens off;
    fastcgi_param   HTTPS  on;
    fastcgi_param   HTTP_SCHEME  https;
    access_log /usr/local/nginx/logs/httpsaccess.log;
}

按照(2)中的配置文件进行更改即可,即可部署多个网站的80端口复用。

2、网站80和443网站重定向

比如你有两个网站,一个是www.liaqi.com另外一个是www.liaqi.cn,www.liaqi.com备案了,但是www.liaqi.cn没有进行备案,那么可以通过Nginx重定向的方法,把网站的访问给重定向到www.liaqi.com上面去。

备案域名的Nginx配置如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
server {
     listen       80;
     server_name  www.liaqi.com;
     server_name  liaqi.com;
     rewrite ^(.*) https://$server_name$1 permanent;   #进行URL重写,将http访问重写至https
}
server {
  listen 443 ssl;
  server_name www.liaqi.com;
  server_name liaqi.com;
  index index.html;
  root /usr/local/nginx/WebServer/vhostA;    #网站目录文件
  ssl_certificate      /usr/local/nginx/sslkey/vhostA/full_chain.pem;
  ssl_certificate_key  /usr/local/nginx/sslkey/vhostA/private.key;
  ssl_session_cache    shared:SSL:1m;
  ssl_session_timeout  5m;
  server_tokens off;
  fastcgi_param   HTTPS  on;
  fastcgi_param   HTTP_SCHEME https;
  access_log /usr/local/nginx/logs/httpsaccess.log;
}

未备案域名的Nginx配置如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
server {
     listen       80;
     listen       443 ssl;
     server_name  www.liaqi.cn;    
     server_name  liaqi.cn;
     ssl_certificate      /usr/local/nginx/sslkey/vhostB/full_chain.pem;
     ssl_certificate_key  /usr/local/nginx/sslkey/vhostB/private.key;

     rewrite ^(.*) https://www.liaqi.com permanent;   #重写域名至具体网站
     rewrite ^(.*) https://liaqi.com permanent;       #重写域名至具体网站
}

3、配置80端口重定向到其他端口

一个网站,我想使用80端口进行访问,但是没有备案,那么该使用Nginx如何配置?(注:本段仅代表个人观点,请按照相关网站要求进行备案)

具体配置方法如下:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
server {
     
  listen  80;    #监听80443端口访问
  listen  443;   #监听80443端口访问
  server_name www.liaqi.com;
  server_name liaqi.com;
  rewrite ^(.*)  https://www.liaqi.com:8887 permanent;   #重写至服务器的8887端口
  rewrite ^(.*)  https://liaqi.com:8887 permanent;      #重写至服务器的8887端口
}

server {
  listen  8887 ssl;         #对需要重写的8887端口进行开启https访问
  server_name 192.168.0.112.92:8887;  #开启使用的8887端口
  index index.html;
  #server_tokens off;
  default_type  application/octet-stream;  
  ssl_certificate /usr/local/nginx/sslkey/vhostA/full_chain.pem;
  ssl_certificate_key /usr/local/nginx/sslkey/vhostA/private.key;
  ssl_session_cache    shared:SSL:1m;
  ssl_session_timeout  5m;
  server_tokens off;
  fastcgi_param   HTTPS   on;
  fastcgi_param   HTTP_SCHEME  https;
  access_log /usr/local/nginx/logs/httpsaccess.log;
  location / {
    proxy_pass https://192.168.0.21:8887;  #可以是服务自己的IP地址和端口,也可以是其他服务的IP地址和端口
    index      index.htm index.html;
  }
}
#配置的大概意思就是:源站点是https://192.168.0.21:8887,但是是带有端口的,但是无法通过80端口访问,
#所以我用这个https://192.168.0.112.92:8887来进行代理源站点。并且www.liaqi.com的域名已经解析至这
#台服务器上了,所以在浏览器直接输入域名即可正常的访问到目标站点。另外,此方法不保证长久有效,有些服务
#提供商发现有人使用此种方法会进行封停相关端口,慎用慎用。

我的博客即将同步至腾讯云+社区,邀请大家一同入驻:​​https://cloud.tencent.com/developer/support-plan?invite_code=3m3shdxom4o4k​

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
我的博客即将同步至腾讯云+社区,邀请大家一同入驻:https://cloud.tencent.com/developer/support-plan?invite_code=3m3shdxom4o4k
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022/01/04 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
nginx搭建web服务器,配置端口复用
5、将配置文件保存在/etc/init.d/nginx位置即可。之后即可通过下面的命令进行启动服务。
Tacc
2022/01/11
2.1K0
nginx搭建web服务器,配置端口复用
Nginx-基础总结(上)
1.proxy_set_header :在将客户端请求发送给后端服务器之前,更改来自客户端的请求头信息。 2.proxy_connect_timeout:配置Nginx与后端代理服务器尝试建立连接的超时时间。 3.proxy_read_timeout : 配置Nginx向后端服务器组发出read请求后,等待相应的超时时间。 4.proxy_send_timeout:配置Nginx向后端服务器组发出write请求后,等待相应的超时时间。 5.proxy_redirect :用于修改后端服务器返回的响应头中的Location和Refresh。
云计算小黑
2022/12/28
4770
Nginx的https配置记录以及http强制跳转到https的方法梳理
一、Nginx安装(略) 安装的时候需要注意加上 --with-http_ssl_module,因为http_ssl_module不属于Nginx的基本模块。 Nginx安装方法: # ./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module # make && make install 二、生成证书(略) 可以使用openssl生成证书
洗尽了浮华
2018/01/23
5.9K0
网站启用SSL自动301跳转到HTTPS教程
服务器搭建之后就一直在使用宝塔,先抛出安全性能之外,宝塔真的是不错啦,我之前用过许多的控制面板(没办法,技术能力有限,只能用带控制面板的)最好发现还是宝塔比较符合大众的操作习惯,当然收费的amh我也用过,效果不如宝塔,宝塔有很多功能已经集成了,不需要额外的配置文件,比如今天说的启用SSL后,让网站的http自动跳转到https上。如果你的主机不是宝塔,那么参照以下教程试试,也许会有惊喜(记得备份,否则惊喜可能变成惊吓),先说Apache强制301跳转到https教程:
李洋博客
2021/06/15
1.5K0
WordPress更换域名让老域名https 301重定向到新域名
以前给Wordpress网站换域名没有考虑过老域名还要301重定向的事情,因为老域名直接不用了,这次更换就遇到这个问题了,老域名还是继续要用,所以就得考虑301的问题了。
速企云
2024/03/02
2.1K0
WordPress更换域名让老域名https 301重定向到新域名
Linux下Nginx配置SSL以及301重定向
Nginx配置文件,位置/etc/nginx/sites-enabled下的default文件
no怕不了木
2023/10/26
1.2K0
Nginx配置HTTPS详细说明
TLS或传输层安全( transport layer security),它的前身是SSL(安全套接字层secure sockets layer),是Web协议用来包裹在一个受保护,加密封装正常通道。采用这种技术,服务器和客户端之间可以安全地进行交互,而不用担心消息将被拦截和读取。证书系统帮助用户在核实它们与连接站点的身份。
星哥玩云
2022/07/14
8310
CentOS 上部署Nginx实现http301重定向https配置文件conf
cd /etc/nginx/conf.d vim Testpage1.conf server { listen 443 ssl; #配置HTTPS的默认访问端口号为443。此处如果未配置HTTPS的默认访问端口,可能会造成Nginx无法启动。Nginx 1.15.0以上版本请使用listen 443 ssl代替listen 443和ssl on。 server_name www.certificatestests.com; #将www.certificatestes
OwenZhang
2021/12/08
6720
手把手教你 3 分钟搞定个人网站 http 免费升级到 https
阿里云有免费的 ssl 证书,一年时间没操作 ssl 证书了,阿里云竟然把免费证书入口给隐藏了,害我提交了一次工单。
业余草
2020/08/25
2K0
手把手教你 3 分钟搞定个人网站 http 免费升级到 https
Linux+Nginx/Apache/Tomcat新增SSL证书,开启https访问教程
上上篇文章《nginx 平滑升级&新增模块》提到了公司的 https 访问需求。当我新增了 SSL 模块之后,却发现以前还真没部署过 https 访问。 下面整理我的部署过程,并收集了一下 Apach
张戈
2018/03/23
3.5K0
Linux+Nginx/Apache/Tomcat新增SSL证书,开启https访问教程
拥抱https之Nginx配置详解
了解之后发现我申请的域名是单域名, 如 baidu.com和ssl.baidu.com认为是两个域名,只是他们的主域名是baidu.com。因此我的子域名也需要在申请个ssl。填入域名地址。等待一会后再安装到我的又拍云上。
西柚dzh
2022/06/09
5940
拥抱https之Nginx配置详解
Nginx 总结
如果是使用了两层或以上cdn(使用了cdn和web防火墙也适用),那么在nginx的配置文件http{}字段中加入
yiyun
2022/04/01
2910
Nginx配置正向代理和反向代理,实现HTTPS通信的案例
客户端直接通过HTTP访问内部服务是不安全的,如果在不改造客户端和内部服务的情况下实现HTTPS的安全信息传输?这里使用了nginx的正向代理和反向代理,如上图所示。
飞狗
2019/02/25
5.3K0
Nginx配置正向代理和反向代理,实现HTTPS通信的案例
【持续更新】nginx 文件配置解析
#user  nobody; worker_processes  1; #error_log  logs/error.log; #error_log  logs/error.log  notice; #error_log  logs/error.log  info; #pid        logs/nginx.pid; events {     worker_connections  1024; } http {     include       mime.types;     defaul
一朵灼灼华
2022/08/05
3410
Ngxin做http强制跳转https后接口的POST请求变成GET
公司准备在Ngxin环境将 http 换成 https,就需要 http 强制跳转到 https。这个在网上搜了下,基本总结下
星哥玩云
2022/07/13
1.7K0
Nginx 利用代理转发请求实例
我们米扑科技的业务遍布全球,有时国外的客户无法访问我们搭建在国内的服务,这就要求我们在国外服务器上搭建一个代理转发服务,用户请求国外服务器的域名,然后代理转发到国内,处理请求后返回结果给国外的客户。Nginx 不仅可以实现负载均衡,还可以实现反向代理转发,非常适合我们的使用场景,因此我们米扑科技采用 Nginx 利用代理转发请求实例。 米扑博客原文:Nginx 利用代理转发请求实例 Nginx 利用代理转发请求实例 nginx 作为目前最流行的web服务器之一,可以很方便地实现反向代理。 nginx 反向代
阳光岛主
2018/05/17
3.2K0
【腾讯云的1001种玩法】Nginx网站服务器学习与入门
魏豪
2017/04/24
5.6K2
【腾讯云的1001种玩法】Nginx网站服务器学习与入门
Nginx/Tengine通用配置教程
Nginx/Tengine通用配置教程,包含多域名共用一个端口指向不同程序、Nginx负载均衡配置、Https配置、禁止通过IP访问、设置访问流量并发速率、Nginx反代PHP、Nginx反代Tomcat。 Nginx通用配置: user www www; worker_processes auto; worker_cpu_affinity auto; dso { load ngx_http_concat_module.so; load ngx_http_sysguard_module.so; }
4xx.me
2022/06/09
9880
Nginx/Tengine通用配置教程
服务器安防配置–笔记三–nginx构建https协议的wp站点
折腾成功,留下记录.目录是:https是什么,nginx配置,sql全局替换,后台开启https链接,修复图片打不开,增加http禁止.
十四君
2019/11/29
6750
服务器安防配置–笔记三–nginx构建https协议的wp站点
nginx常用配置
proxy_redirect 该指令用来修改被代理服务器返回的响应头中的Location头域和“refresh”头域。
章工运维
2023/05/19
9710
推荐阅读
相关推荐
nginx搭建web服务器,配置端口复用
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验