從被鎖公司門外,手機都在屋裏這一案例,教你使用Nginx反向代理一個手機號靜態頁面解決困惑

額,昨天(6.10)晚上9點半,收拾收拾東西準備回家了,把眼睛摘掉,出去洗了個臉,回來的時候,門上人臉識別裝置一直識別不上去,也是很尷尬,手機都在裏面,身上什麼東西都沒有,怎麼辦呢,我想找我的借個手機仍是很容易的,可是悲哀的是我沒有記下任何人的手機號,這些信息都在個人手機裏面javascript

因而乎在這個事情解決以後,我決定作一個網站記錄我手機上一些經常使用的手記號,以後我直接訪問這個網站就能查看手機號了,也就是說,我只要借到手機,而後就能訪問網站找到手機號,那麼開始吧java


實現起來,就跟作菜同樣,要先準備一些材料node

  • 前提:
    • 要有一個雲服務器
    • 要有一個備案的域名
    • 要有CDN解析

首先是在雲服務器上安裝Nginxnginx

安裝:yum install nginx
啓動nginx:service nginx start
開機自啓:systemctl enable nginx.service

// 而後訪問外網網址,就能看到Nginx的啓動頁面了(如今啓動的是80端口,默認端口)
複製代碼

個人域名解析是騰訊雲解析,在雲解析下面的域名添加一個子域名express


上面的完成以後,咱們準備一個有手記號的靜態頁面npm


將靜態頁面上傳到你的雲服務器(個人是Centos7),使用的工具以下,大家也能夠用本身的方式,反正傳到本身的雲服務器上就OK,我是傳到了雲服務器的根目錄下的 cellphones文件夾下的 static文件下bash


文件傳上去以後,安裝node,啓動一個靜態代理服務器

  • 設置安裝源:curl --silent --location rpm.nodesource.com/setup_11.x | bash -
  • 安裝node:yum install -y nodejs
  • 安裝好了以後,在 /cellphones目錄下安裝 Express:npm install express --save
  • 在 /cellphones 下面創建一個 app.js文件用於啓動,下面是裏面的代碼
var express = require('express')
var app = express()
app.use(express.static('static')) // 代理靜態文件夾
app.listen(8989, () => console.log('Example app listening on port 8989!'))
複製代碼

這些準備好了以後開始配置Nginxapp


配置Nginx反向代理(在 /etc/nginx/conf.d/ 下建一個文件 cellphones.conf而後書寫)curl

其中的原理是:cellphones.itzkp.com 在解析的時候,會解析成 ip,也就是默認80端口,而後Nginx80端口 會根據下面的配置,找到 cellphones.itzkp.com對應的具體ip是 8989端口,而後就能訪問了

server {
        listen 80;
        server_name cellphones.itzkp.com;

        location / {
         proxy_pass http://140.143.3.244:8989;
         proxy_set_header X-Real-IP $remote_addr;
         proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
         proxy_set_header Host $http_host;
         proxy_set_header X-Nginx-Proxy true;
         proxy_redirect off;
        }
}
複製代碼

  • 重啓Nginx:nginx -s reload
  • 進入到 /cellphones 目錄下,運行 node app.js
  • 訪問:cellphones.itzkp.com(這是個示例)

後記:可使用pm2啓動node程序,這樣更好


固然這樣可能仍是不保險,萬一之後再丟了怎麼辦,仍是建個羣保險,保險點好

相關文章
相關標籤/搜索