成人国产在线小视频_日韩寡妇人妻调教在线播放_色成人www永久在线观看_2018国产精品久久_亚洲欧美高清在线30p_亚洲少妇综合一区_黄色在线播放国产_亚洲另类技巧小说校园_国产主播xx日韩_a级毛片在线免费

資訊專欄INFORMATION COLUMN

寫給前端小白看的linux部署基礎(chǔ)知識(shí)

王巖威 / 2069人閱讀

摘要:前端平時(shí)接觸到的機(jī)會(huì)并不多,但是懂點(diǎn)對(duì)于前端來說還是有益無害的,起碼還是要了解一下最基本的部署知識(shí)。特別注意的是,國內(nèi)注冊的域名要實(shí)名備案,否則無法域名解析。

前端平時(shí)接觸到linux的機(jī)會(huì)并不多,但是懂點(diǎn)linux對(duì)于前端來說還是有益無害的,起碼還是要了解一下最基本的部署知識(shí)。

博客地址

購買服務(wù)器

要部署項(xiàng)目,首先我們需要一臺(tái)服務(wù)器。平時(shí)開發(fā),項(xiàng)目是跑在我們本地電腦上的,現(xiàn)在我們想要讓所有人都能訪問這個(gè)項(xiàng)目,就需要部署到一臺(tái)能被外網(wǎng)訪問的服務(wù)器?,F(xiàn)在市面上有虛擬主機(jī),VPS,ECS(云服務(wù)器)。虛擬主機(jī)我就不考慮了,因?yàn)樘摂M主機(jī)基本不支持ssh登錄,而我們希望學(xué)習(xí)linux知識(shí),所以只考慮VPS和ECS。而ECS價(jià)格比較高,考慮到我只是為了學(xué)習(xí)用,對(duì)于服務(wù)器的性能和配置要求不高,最后決定購買VPS。

VPS的購買渠道有很多,比如搬瓦工,vultr,我這里購買的是vultr的VPS($5/mo的套餐),安裝的操作系統(tǒng)是Ubuntu 14.04 x64

安裝成功過,在vultr控制臺(tái)可以看到如下信息:

SSH遠(yuǎn)程登錄

我們想在本地電腦登入到服務(wù)器,這就需要一個(gè)支持SSH登錄的終端工具。windows上比如Xshell,cmder,Mac上比如iterm2。

打開終端,輸入

ssh -p 你的端口號(hào) 你的用戶名@登錄地址
# 比如登錄入到vultr的vps(默認(rèn)端口是22,所以可以不指定)
 ssh [email protected]

輸入完密碼后,即可進(jìn)入服務(wù)器

修改密碼
passwd

vultr默認(rèn)密碼太復(fù)雜,所以自定義密碼方便記憶。

apt-get

apt-get命令可以很方便的下載我們需要的包

apt-get update
apt-get install openssl libssl-dev nginx wget git

Nginx安裝完成后,在瀏覽器訪問你服務(wù)器的IP地址(例如:http://149.28.17.111/ ), 應(yīng)該可以看到Nginx的歡迎界面!

Nginx靜態(tài)資源

我現(xiàn)在希望訪問http://149.28.17.111/test 可以展示一個(gè)靜態(tài)頁面,這時(shí)就該Nginx上場了!

mkdir -p static/test

在當(dāng)前目錄下,新建一個(gè)static文件夾,static里面又新建了一個(gè)test目錄,在里面存放一個(gè)靜態(tài)文件index.html

vi static/test/index.html

按下i進(jìn)入insert模式,輸入如下代碼:




    
    無路賽


    

無路賽

按下ESC退出insert模式,輸入(注意有冒號(hào)!)

:wq!

保存退出

vi /etc/nginx/conf.d/mytest.conf

新建一個(gè)nginx配置文件,輸入如下代碼

server {
    listen 80;
    server_name 149.28.17.111(填寫你的ip地址);

    location /test {
        root   /root/static;
        index  index.html;
    }
}

修改nginx用戶組(不然會(huì)報(bào)403)

vi /etc/nginx/nginx.conf

www-data修改為root

user root;

于是訪問http://149.28.17.111/test Nginx就會(huì)去找/root/static/test目錄下的index.html

ftp上傳文件

前面我們使用vi編輯器新建了兩個(gè)文件(mytest.conf index.html),你可能覺得寫起代碼來一點(diǎn)都不方便。其實(shí)我們也可以在本地寫好這兩個(gè)文件,然后使用ftp工具將這兩個(gè)文件上傳到服務(wù)器。

ftp工具有很多,比如flashfxp。以xshell自帶的xftp為例,打開ftp,連接到服務(wù)器

ftp界面,左邊是我們本地目錄,右邊是服務(wù)器目錄

右邊可視化界面,能很方便的查看服務(wù)器的各個(gè)文件夾,同時(shí)也可以把本地的文件上傳到服務(wù)器(只需把文件拖拽到右邊窗口即可)

node版本控制

前端開發(fā)經(jīng)常要使用npm安裝各種包,因此需要搭建node環(huán)境
使用nvm進(jìn)行版本控制

wget -qO- https://raw.githubusercontent.com/creationix/nvm/v0.33.11/install.sh | bash

安裝完成后,新打開一個(gè)終端登入服務(wù)器

nvm install 8.11.1

安裝完成后,輸入

node -v

如果出現(xiàn)版本,說明node安裝成功!

pm2

新建app.js

vi app.js
const http = require("http");                                
                                                             
http.createServer((function(req, res) {                      
        res.writeHead(200, {"Content-Type": "text/plain"});   
        res.end("八嘎Hentai無路賽");                              
})).listen(8081);                                            
                                                             
console.log("server start at 8081");                         

保存退出

啟動(dòng)app.js

node app.js

在瀏覽器訪問 http://149.28.17.11:8081 就可以看見頁面

使用命令node app.js啟動(dòng)項(xiàng)目有個(gè)致命的問題,如果把當(dāng)前終端關(guān)了,項(xiàng)目也就默認(rèn)關(guān)閉了。

因此我們需要使用pm2管理項(xiàng)目

npm install pm2 -g
pm2 start app.js

使用pm2啟動(dòng)項(xiàng)目后,即使當(dāng)前終端關(guān)閉了,node進(jìn)程仍然在后臺(tái)運(yùn)行著!

Nginx代理端口

我們希望訪問項(xiàng)目時(shí),不需要帶上8081端口??梢允褂肗ginx的反向代理功能:

vi /etc/nginx/conf.d/mytest.conf

修改配置

upstream mytest {
    server 127.0.0.1:8081;
}
server {
    listen 80;
    server_name 149.28.17.111(填寫你的ip地址);
    
    location / {
        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_pass http://mytest;
        proxy_redirect off;
    }

    location /test {
        root   /root/static;
        index  index.html;
    }
}

保存退出,重啟nginx

nginx -s reload

原理就是:訪問http://149.28.17.111時(shí), nginx反向代理到http://149.28.17.111:8081, 并把本地node服務(wù)器返回的內(nèi)容展示出來

域名解析

目前我們訪問網(wǎng)站需要直接輸入ip地址,這樣十分不方便。為此,我們需要買一個(gè)域名來解析到網(wǎng)站。

域名提供商有很多,比如萬網(wǎng),godaddy等等。特別注意的是,國內(nèi)注冊的域名要實(shí)名備案,否則無法域名解析。

以萬網(wǎng)舉例:添加兩個(gè)解析,其中記錄值填的就是vps的ip地址

修改ngnix配置

vi /etc/nginx/conf.d/mytest.conf
upstream mytest {
    server 127.0.0.1:8081;
}
server {
    listen 80;
    server_name 149.28.17.111(填寫你的ip地址);
    
    location / {
        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_pass http://mytest;
        proxy_redirect off;
    }

    location /test {
        root   /root/static;
        index  index.html;
    }
}

server {
    listen 80;
    server_name www.urusai.site(填寫你的域名);
    location / {
        proxy_pass http://mytest;
        proxy_redirect off;
    }
}

server {
    listen 80;
    server_name urusai.site(填寫你的域名);
    location / {
        proxy_pass http://mytest;
        proxy_redirect off;
    }
}

重啟nginx

nginx -s reload

訪問 http://www.urusai.site 或者 http://urusai.site 就可以看到頁面了!

文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請注明本文地址:http://systransis.cn/yun/39920.html

相關(guān)文章

  • 寫給小白看的JS異步

    摘要:主線程在啟動(dòng)程序時(shí)被創(chuàng)建,用于執(zhí)行函數(shù)。用戶自主創(chuàng)建的若干進(jìn)程相對(duì)于主線程而言就是子線程。子線程和主線程都是獨(dú)立的運(yùn)行單元,各自的執(zhí)行互不影響,因此能夠并發(fā)執(zhí)行。這就是的異步機(jī)制了。 某天突然寫了個(gè)方法要從后臺(tái)調(diào)用數(shù)據(jù),顯示在前臺(tái)頁面,但是輸出結(jié)果總是空undefined,得不到數(shù)據(jù)。多方找資料才發(fā)現(xiàn),原來是入了JS異步的坑。 我們常常聽到單線程、多線程、同步、異步這些概念,那么這些東...

    gghyoo 評(píng)論0 收藏0
  • 26自學(xué)轉(zhuǎn)行前端寫給和1年前一樣迷茫的我的你)

    摘要:轉(zhuǎn)行前端有哪些疑慮在人生的抉擇處,尋求一些別人的經(jīng)驗(yàn)和總結(jié),無可厚非,但是決定了就一定要堅(jiān)定的走下去,謹(jǐn)慎是為了更好的堅(jiān)持,而不是放棄的理由。寫在前面這里前后端指的是開發(fā)的前后端。 轉(zhuǎn)行前端有哪些疑慮? 在人生的抉擇處,尋求一些別人的經(jīng)驗(yàn)和總結(jié),無可厚非,但是決定了就一定要堅(jiān)定的走下去,謹(jǐn)慎是為了更好的堅(jiān)持,而不是放棄的理由。寫在前面:這里前后端指的是web開發(fā)的前后端。1、前端崗位需...

    番茄西紅柿 評(píng)論0 收藏2637
  • 26自學(xué)轉(zhuǎn)行前端寫給和1年前一樣迷茫的我的你)

    摘要:轉(zhuǎn)行前端有哪些疑慮在人生的抉擇處,尋求一些別人的經(jīng)驗(yàn)和總結(jié),無可厚非,但是決定了就一定要堅(jiān)定的走下去,謹(jǐn)慎是為了更好的堅(jiān)持,而不是放棄的理由。寫在前面這里前后端指的是開發(fā)的前后端。 轉(zhuǎn)行前端有哪些疑慮? 在人生的抉擇處,尋求一些別人的經(jīng)驗(yàn)和總結(jié),無可厚非,但是決定了就一定要堅(jiān)定的走下去,謹(jǐn)慎是為了更好的堅(jiān)持,而不是放棄的理由。寫在前面:這里前后端指的是web開發(fā)的前后端。1、前端崗位需...

    番茄西紅柿 評(píng)論0 收藏2577
  • 26自學(xué)轉(zhuǎn)行前端寫給和1年前一樣迷茫的我的你)

    摘要:轉(zhuǎn)行前端有哪些疑慮在人生的抉擇處,尋求一些別人的經(jīng)驗(yàn)和總結(jié),無可厚非,但是決定了就一定要堅(jiān)定的走下去,謹(jǐn)慎是為了更好的堅(jiān)持,而不是放棄的理由。寫在前面這里前后端指的是開發(fā)的前后端。 轉(zhuǎn)行前端有哪些疑慮? 在人生的抉擇處,尋求一些別人的經(jīng)驗(yàn)和總結(jié),無可厚非,但是決定了就一定要堅(jiān)定的走下去,謹(jǐn)慎是為了更好的堅(jiān)持,而不是放棄的理由。寫在前面:這里前后端指的是web開發(fā)的前后端。1、前端崗位需...

    番茄西紅柿 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<