1. 程式人生 > >部落格開發簡記(2):給部落格找個域名

部落格開發簡記(2):給部落格找個域名

承接上一節,給ubuntu上的django更新一下:

./manage.py migrate

好了,我連公網ip都有了,我可不想每次都以ip來訪問我的網站,那怎麼弄一個域名呢?

(一)申請域名

不必研來研去了,直接在阿里雲提供的服務中購買域名吧,但在下單前,你先要完成域名的資訊模板的稽核,意思是,你要填完你的真實資訊(包括上傳你的證件),通過稽核後,才能繼續域名的購買。域名資訊模板在這個地方建立與管理:https://dc.console.aliyun.com/next/index?#/info-template/InfoTemplate

填寫資訊,然後郵箱驗證、實名認證,請等待。

之後,在這個地方:https://mi.aliyun.com/ ,找到你想要的域名,下單掏錢。簡單來說,以上兩個操作的入口都在這裡:

域名到手而且通過實名驗證後,可以看到這樣的資訊:

那麼,問題來了,怎麼把這個域名跟伺服器的ip繫結起來呢? 按下面的截圖一步步操作即可:



然後,就可以通過域名來訪問django了,如截圖:

然後,你就會提問:還要埠?我輸入網址從來都不寫埠的!

(二)開放埠

是的,一般瀏覽器以域名訪問都不需要你輸入埠,因為瀏覽器自己加了埠,而且一般是預設的埠,比如80,這些埠是web伺服器所特有的,可以固化下來,不需要你輸入。但我這裡還要輸入,為什麼?很明顯是因為我的django用的埠不是預設的埠,而是3389,這麼一個無厘頭的埠,那怎麼解決?

很自然,讓django使用預設的埠唄,不要用3389了。可以,那前提就是,在阿里雲管理頁面,先新增預設的埠,如下面的截圖操作:





這樣,80埠已經可以使用了,重新啟動django:

py manage.py runserver 0.0.0.0:80

如果你發現80給佔用了,一般都是因為nginx啟動而且佔用了80,那可以先停掉nginx:

nginx -s stop 或: /etc/init.d/nginx stop
./manage.py runserver 0.0.0.0:80

知識點,發現埠給佔用了,如果想知道是誰,可以使用命令lsof -i,比如看誰用了8000埠:

lsof -i:8000

然後,真的可以只用域名來訪問網站了,如截圖:

可是,你多操作幾次,或者在微信上分享 www.freep2p.cn 給別人時,會發現,這個網站給監控到了,並且給出這樣的提示:

那是因為這個網站還沒有備案。

(三)網站備案

轉到備案問題的處理,在 https://beian.aliyun.com/ 入手,如截圖:

然後就是根據提示認真寫好各項資訊,其中,產品型別選擇ECS(我的情況),並使用阿里雲app進行人臉記錄並上傳證件拍照。最終,備案通過後(我的是6天后通過),可以看到這樣的資訊:

這時你dig一下網站,也能看到ip(備案前是查不到的):

dig +short www.freep2p.cn

現在,瀏覽器請求我這個網站的完整地址是: http://www.freep2p.cn ,你可能已經想到,不帶https的連結會被提示不安全的。那麼,怎麼變成https呢?

(四)https證書的申請與使用

申請一個https的證書即ssl證書即可,如下圖操作:

https://www.aliyun.com/product/cas?spm=5176.2020520163.cas.2.571656a7EIdyRc








稽核通過後,把證書下載並儲存好。解壓證書zip,可以兩個檔案,一個是xx.pem,一個是xx.key。

然後就是使用證書的環節了,把這兩個檔案拷貝到伺服器的某個目錄(比如用ssh的話,scp到~/),然後找到ningx的安裝目錄(/etc/nginx/),在裡面建立cert目錄,再把pem與key移至cert目錄,比如我的兩個檔案最後是這樣的:

在修改nignx配置之前,先要解決一個問題,nginx對於ssl要使用443埠,你要保證伺服器對外開放了這個埠,比如按上面的介紹,在“安全組”開放443埠。

接著就是修改nginx的配置,讓它使用證書了,為了驗證證書是不是可行,先寫一個最簡單的配置吧:

server {
        server_name www.freep2p.cn;
        root /root/html;
        listen 443;
        ssl on;
        ssl_certificate   cert/2762984_freep2p.cn.pem;
        ssl_certificate_key  cert/2762984_freep2p.cn.key;
    }

下圖對配置的各項進行了解釋:

網站根目錄是/root/html,建立這個目錄,然後再建立一個index.html首頁,index.html裡面寫一句即可:

<h2>welcome to freep2p.cn

然後service nginx restart一下,再用瀏覽器請求: https://www.free2p2.cn ,可以看到返回內容了:

那如果想要之前的http的請求也切換回至https,怎麼辦呢? 加一個轉換唄:

server {
    listen 80;
    server_name freep2p.cn;
    rewrite ^(.*)$ https://$host$1 permanent;
}

至此,你已經可以用通過url來訪問我的網站了。

總結一下,本文介紹了怎麼獲取域名與繫結ip,也講了怎麼備案網站、怎麼使用https證書,這些都是網站開發的基本東西。 接下來就是豐富網站,並且加入web伺服器的問題。

相關推薦

部落開發簡記2部落域名

承接上一節,給ubuntu上的django更新一下: ./manage.py migrate 好了,我連公網ip都有了,我可不想每次都以ip來訪問我的網站,那怎麼弄一個域名呢? (一)申請域名 不必研來研去了,直接在阿里雲提供的服務中購買域名吧,但在下單前,你先要完成域名的資訊模板的稽核,意思是,你要填完

部落開發簡記3從頁面到後端結構的部署

既然已經可以訪問django,那我們就可以搞點事情了哦,至少來個helloworld吧。 (一)helloworld 有兩個基本的知識點: 在瀏覽器發起一個請求(get),去到django,django呼叫urls.py來解析地址或引數,所以你可以改成urls.py,來決定對不同的引數作出不同的函式處理。

iOS開發簡記2自定義tabbar

tabbar是放在APP底部的控制元件。常見的APP都使用tabbar來進行功能分類的管理,比如微信、QQ等等。 小程需要一個特殊一點的tabbar,要求突顯中間的那個按鈕,讓中間按鈕特別顯眼,從而引導使用者去點選。 所以,讓中間按鈕大於兩邊的按鈕,是一個基本的要求。 使用常規的UITabBar跟UIT

Python開發環境2啟動Eclipse時檢測到PYTHONPATH發生改變

工程 新的 “.” ase 窗口 什麽 程序 apply pri OS:Windows 10家庭中文版,Eclipse:Oxygen.1a Release (4.7.1a),PyDev:6.3.2 4月25日,在Eclipse上安裝了PyDev(前面博文有記錄),並開發

iOS開發簡記1指定APP的圖標與啟動圖

appstore 技術分享 tps http data 對象 暫時 -c 系統 各位兄弟姐妹們,早上好,本人花了將近一個月的時間打造了一個完整的IOS版的App, 期間包括開發,測試,上線審核,現在花點時間把實現的過程分享給大家,“知音”app功能簡單,適合對象為初學者,後

iOS開發簡記4錄音AVAudioRecorder

fail pst 記錄 通道 cdn amp enabled 廣州 指定 錄音,聲音的采集,一般有兩種實現辦法,一是使用AVAudioRecorder,一是使用AudioUnit。如果只是簡單的錄音,使用AVAudioRecorder就可以了,如果想更靈活地處理剛錄到的聲音

iOS開發簡記7網絡請求模塊

pin 註意 sea fmt 項目介紹 get img 做了 控制 主流的APP都少不了跟服務器交互,網絡請求是少不了的事情。 開源的網絡請求庫,有很多,比如:AFNetworking、YTKNetwork、PPNetworkHelper、ASIHttpRequest,等等

iOS開發簡記8資料持久化

資料持久化,也就是把資料儲存到磁碟,以後可以再讀取出來使用(也可以再次更改或刪除)。很多場景需要資料持久化,比如為了減輕伺服器的訪問與儲存壓力,客戶端需要在本地做一些資料持久化的工作。 iOS的資料持久化,有幾種方式,包括:自定義格式的檔案、plist、CoreData、FMDB等等。 這裡

iOS開發簡記9APPStore審核

oci HERE format call 並不會 如果 rod creates 3.1.1 "覓知音"這個APP的第一個版本從提交審核到上架,歷時三個星期,其中遇到一些審核上的問題,它的處理或許能幫助到遇到同樣問題的小夥伴們,所以這裏列舉出來,這三個星期

iOS開發簡記9APPStore稽核

"覓知音"這個APP的第一個版本從提交稽核到上架,歷時三個星期,其中遇到一些稽核上的問題,它的處理或許能幫助到遇到同樣問題的小夥伴們,所以這裡列舉出來,這三個星期如何跟蘋果的稽核團隊“鬥智鬥勇”。 (1)Guideline 2.1 - Information Needed 這是問題的標題,問

Python2語法簡記2變數型別

2 變數型別 變數建立:用等號(=)賦值來建立變數。變數與型別無關,物件與型別有關。可以通過del刪除變數。 在Python中只有物件才有型別,變數沒有型別,通過等號(=)賦值來建立變數。 等號(=)前面的變數名與型別無關,等號(=)後面的值才是被建立的物件,變數名只是引用了該值物件的地

iOS開發簡記1指定APP的圖示與啟動圖

各位兄弟姐妹們,早上好,本人花了將近一個月的時間打造了一個完整的IOS版的App, 期間包括開發,測試,上線稽核,現在花點時間把實現的過程分享給大家,“知音”app功能簡單,適合物件為初學者,後面我會把iOS客戶端原始碼、API介面原始碼“呈獻”給大家,謝謝大家的支援, 歡迎園友一起交流一起學習,廢話少說,裝

iOS開發簡記6storyboard的使用

從xib到storyboard,iOS介面開發的方式在變化。 這裡記錄怎麼使用storyboard來完成簡單的介面開發,比如實現一個“我”的簡單介面。 (1)新建storyboard 在新建檔案嚮導中,選擇storyboard並命名即可。 (2)拉入viewcontroller storyboard以vc為載

菜鳥WDF驅動開發系列2除錯第一個KMDF驅動程式

根據系列上一篇的內容,已經基本作好了驅動除錯環境的配置,現在著手開始試一下怎麼用WinDBG除錯。每一位新手在開始學習驅動開發的時候相信總會看大量的資料,如我第一篇提到的幾本書的確是不錯的,但名著總有一個問題就是,開篇一開始總是會鋪陳太多的基本理論,這會讓我們覺得手足無措,

iOS開發簡記7網路請求模組

主流的APP都少不了跟伺服器互動,網路請求是少不了的事情。 開源的網路請求庫,有很多,比如:AFNetworking、YTKNetwork、PPNetworkHelper、ASIHttpRequest,等等。 這裡記錄AFNetworking的使用。 (1)安裝afnetworking 跟使用QMUIKit一

純忽悠程式設計師的開發要求2要學會用別人已經開發的程式碼

記得剛開發linux驅動的時候,我對linux驅動為何物都不甚瞭解,作業系統的基礎也一般,就有很多人對我雞歪:不要什麼東西都一開始自己做,把別人的東西拿過來,改改能用就好,程式設計師不是發明家,要考慮效率問題,而且舉了半打兒例子,當時俺還覺得有道理,畢竟飛機一個人不可能造出來

C#撲克牌遊戲2CardLib新增Cards集合

(一):背景         在上一篇文章中,我們簡單建立了幾個可能在後面會用到的類並且放到了一個類庫中,接下來需要對這幾個類進行進一步的思考。首先一個問題是,我們原先在Deck類中,使用了一個數組來代表一副牌,但是我們知道,在一個撲克牌遊戲中,(例如鬥地

2.遺傳演算法matlab實現2再加例項兩一元二元完整作圖,二維圖形,三維圖形以及進化過程圖

(1)直接在命令視窗輸入以下程式碼: figure(1); hold on; lb=1;ub=2; %函式自變數範圍[1,2] ezplot('sin(10*pi*X)/X',[lb,ub]);

Windows Phone開發2豎立自信,初試鋒茫

一鍵 優秀 保持 知識 sdn ant emulator 一個 動畫 上一篇文章中,我們聊了一些“大炮”話題,從這篇文章開始,我們一起來學習WP開發吧。 一、我們有哪些裝備。 安裝完VS 學習版 for WP後,也連同SDK一並安裝了,不必像安卓那樣,安裝JDK,下載

Qt與FFmpeg聯合開發指南——編碼2完善功能和基礎封裝

v_op buffer 目前 front from 幀率 inter 博客 int 上一章我用一個demo函數演示了基於Qt的音視頻采集到編碼的完整流程,最後經過測試我們也發現了代碼中存在的問題。本章我們就先處理幾個遺留問題,再對代碼進行完善,最後把編碼功能做基礎封裝。 一