而在學(xué)習(xí) web 開發(fā),比如 Django、Flask、webpy 等框架的過(guò)程中,我們會(huì)有將網(wǎng)站上線的需求,用來(lái)測(cè)" />

国产成人精品无码青草_亚洲国产美女精品久久久久∴_欧美人与鲁交大毛片免费_国产果冻豆传媒麻婆精东

18143453325 在線咨詢 在線咨詢
18143453325 在線咨詢
所在位置: 首頁(yè) > 營(yíng)銷資訊 > 網(wǎng)站運(yùn)營(yíng) > 把你開發(fā)的網(wǎng)站免費(fèi)發(fā)布到互聯(lián)網(wǎng)上

把你開發(fā)的網(wǎng)站免費(fèi)發(fā)布到互聯(lián)網(wǎng)上

時(shí)間:2022-08-30 15:06:01 | 來(lái)源:網(wǎng)站運(yùn)營(yíng)

時(shí)間:2022-08-30 15:06:01 來(lái)源:網(wǎng)站運(yùn)營(yíng)

0. 前言

之前我們寫過(guò)很多代碼,但幾乎都是在自己的電腦上運(yùn)行的。如果別人要看,也只能在電腦上演示,或者把代碼發(fā)給他運(yùn)行。

而在學(xué)習(xí) web 開發(fā),比如 Django、Flask、webpy 等框架的過(guò)程中,我們會(huì)有將網(wǎng)站上線的需求,用來(lái)測(cè)試或展示。

如何可以讓我們寫的網(wǎng)站通過(guò)互聯(lián)網(wǎng)來(lái)訪問(wèn)呢?

本篇文章就將介紹如何免費(fèi)且快速的在 PythonAnywhere 上部署自己的 Django 網(wǎng)站。與 PythonAnywhere 類似的免費(fèi)平臺(tái)還有 Heroku,Openshift 等,收費(fèi)平臺(tái)有阿里云、亞馬遜 AWS微軟 Azure 等。

本文包括兩部分:

  1. 直接在 PythonAnywhere 新建項(xiàng)目
  2. 在 PythonAnywhere 上部署已有項(xiàng)目

1. 部署前須知

1.1 部署環(huán)境

針對(duì)本次部署的一些說(shuō)明:

1.2 遇到問(wèn)題怎么辦

由于每個(gè)人的部署環(huán)境,代碼量不一樣,所以部署的過(guò)程中很可能會(huì)出現(xiàn)問(wèn)題,所以在此貼出兩個(gè)英語(yǔ)版本教程,可以結(jié)合本教程來(lái)看:

Deploy! · Django Girls Tutorial

Deploying an existing Django project on PythonAnywhere

同時(shí),PythonAnywhere 也提供了論壇,遇到錯(cuò)誤時(shí)不妨在論壇上搜索一下錯(cuò)誤信息,論壇地址如下:

Forums : PythonAnywhere

PythonAnywhere 支持常用的 Python web 框架:Django、web2py、Flask、Bottle,也可以手動(dòng)配置,還提供 MySQL 支持。免費(fèi)賬戶可以創(chuàng)建一個(gè)項(xiàng)目,雖然在性能和流量上有限制,但作為學(xué)習(xí)用足夠了。

2. 新建 PythonAnywhere 項(xiàng)目

在 PythonAnywhere 上新建項(xiàng)目并運(yùn)行的過(guò)程十分簡(jiǎn)單,在此貼出流程圖,查看教程或自己動(dòng)手部署時(shí)做到心中有數(shù)。

2.1 注冊(cè)登錄

這個(gè)沒啥特別的地方,不贅述。PythonAnywhere 網(wǎng)站:

Host, run, and code Python in the cloud: PythonAnywhere

2.2 新建 web-app

然后按照提示依次選擇框架和版本,完成配置:

next -> django -> Python3.5 -> next

2.3 修改 urls 和 views 文件

這是新建項(xiàng)目最關(guān)鍵的一步。這里我們新增一條對(duì)網(wǎng)站根目錄路徑的響應(yīng)處理,返回一個(gè)包含字符“hello,world”的網(wǎng)頁(yè)。

進(jìn)入 Files 分頁(yè):

如下圖所示修改urls文件:


新建 views.py 文件后,添加如下代碼:

2.4 運(yùn)行

完成修改之后,需要點(diǎn)擊一下 Reload 重新載入修改后的網(wǎng)站。

下面是見證奇跡的時(shí)刻!

打開你注冊(cè)時(shí)設(shè)定的網(wǎng)址,將會(huì)看到如下圖所示的頁(yè)面:

以上,就是新建項(xiàng)目的整個(gè)過(guò)程。如果在此基礎(chǔ)上增加頁(yè)面,只需要對(duì) urls.py、views.py 進(jìn)行修改,必要時(shí)增加 models.py。基本上就是將本地開發(fā)搬到網(wǎng)頁(yè)上操作。了解過(guò) Django MTV 模式的同學(xué)是不是覺得很簡(jiǎn)單呢?

3. 部署已有項(xiàng)目到PythonAnywhere

接下來(lái)再講一講如何將已有的 Django 項(xiàng)目部署到 PythonAnywhere 上。這個(gè)要稍微麻煩一些,依然先上流程圖:

3.1 注冊(cè)登錄

同 2.1

3.2 新建 bash 控制臺(tái)

我們需要將 GitHub 上的代碼克隆過(guò)來(lái),所以在 Consoles(控制臺(tái))下我們新建一個(gè) bash 控制臺(tái)。

點(diǎn)擊 bash 進(jìn)入一個(gè)類似 cmd 的操作界面。




3.3 從 GitHub 上傳代碼

PythonAnywhere 上已經(jīng)預(yù)裝好了 git,所以只需在 bash 控制臺(tái)下,使用 git clone 命令將 GitHub 的代碼上傳到服務(wù)器。

git clone https://your.github.site對(duì) git 操作有疑問(wèn)的可以看看這份《git - 簡(jiǎn)明指南》:git - the simple guide - no deep shit!

3.4 建立虛擬環(huán)境

繼續(xù)在 bash 控制臺(tái)下操作。代碼示例如下:

進(jìn)入項(xiàng)目文件夾

cd mysitevirtualenv --python=python3.5 myvenvsource myvenv/bin/activate其中 mysite 是你的項(xiàng)目名,myvenv 是你的虛擬環(huán)境目錄名。

3.5 下載所需安裝包

接下來(lái),使用 pip 下載項(xiàng)目中使用到的庫(kù),最基本的就是 django。

注意:每個(gè)人的項(xiàng)目中安裝的庫(kù)可能不一樣,所以一定記得將所有項(xiàng)目中用到的庫(kù)都下載。比如處理圖片(如添加頭像)用到的 Pillow,操作 MySQL 使用到的 pymysql 等。

pip install djangopip install pillow...3.6 遷移數(shù)據(jù)庫(kù)并創(chuàng)建管理員賬戶

創(chuàng)建數(shù)據(jù)表。當(dāng)然需要預(yù)先配置好 MySQL 并建好庫(kù)。

python manage.py migrate創(chuàng)建管理員,按要求輸入賬戶及密碼。

python manage.py createsuperuser到此,關(guān)于 bash 控制臺(tái)的操作告一段落。

3.7 修改 setting文件

進(jìn)入到 Files 欄目中,編輯 settings.py 文件,修改其中的 ALLOWED_HOST 值,把你項(xiàng)目的域名添加進(jìn)去。

修改示例:

ALLOWED_HOSTS = ['username.pythonanywhere.com']注意:使用 MySQL 的同學(xué)還需要修改 settings.py 中 DATABASE 的設(shè)置。

3.8 新建 Web-app

進(jìn)入 Web 欄目,選擇

Add a new webapp -> next -> Manual Configuration -> Python3.5 -> next

比較重要的兩步截圖如下:

3.9 配置 WSGI

  1. 按照要求填寫正確的項(xiàng)目文件夾
  2. 修改 WSGI 文件
修改 WSGI 配置文件,注意填寫正確的 path 路徑。




以下圖中的信息為例,settings文件的完整路徑為:


/home/zx576/zxsite_v0.3/mysite/settings.py那么在文件中應(yīng)該如下圖所示填寫


3.10 其他的 web 設(shè)置

最后我們?cè)僭O(shè)置一下虛擬環(huán)境路徑,以及靜態(tài)文件路徑,本地項(xiàng)目中有 media 文件的小伙伴仍需要設(shè)置 media 路徑。

結(jié)果如下圖所示:

3.11 展示

最后“Reload”一下,就開開心心去查看自己的網(wǎng)站吧!

下面是小編的半成品(捂臉逃:

3.12 總結(jié)

以上就是將已有項(xiàng)目部署到 PythonAnywhere 的整個(gè)流程,回顧整個(gè)流程,攏共分三步:

  1. 上傳代碼
  2. 配置代碼
  3. 配置環(huán)境
都是不難的知識(shí),但每一步都有一些細(xì)節(jié)需要我們?nèi)フJ(rèn)真對(duì)待,最后才能搭出自己的網(wǎng)站。




魔鬼在細(xì)節(jié),編程之事大抵如此。




在公眾號(hào)『Crossin的編程教室』(crossincode)里回復(fù) 部署,可查看演示博客網(wǎng)站(仿 WordPress)及參考 Django 項(xiàng)目代碼。




2016 即將過(guò)去。祝大家新年有新的收獲!








其他文章及回答:




學(xué)習(xí)編程的過(guò)程中可能會(huì)走哪些彎路,有哪些經(jīng)驗(yàn)可以參考? - Crossin 的回答

你是如何自學(xué) Python 的? - Crossin 的回答

今天,你搶到票了嗎 - Crossin的編程教室 - 本站專欄

Python 與 Excel 不得不說(shuō)的事 - Crossin的編程教室 - 本站專欄

Python-Excel 模塊哪家強(qiáng)?- Crossin的編程教室 - 本站專欄

爆款游戲《貪吃蛇大作戰(zhàn)》的 Python 實(shí)現(xiàn) - Crossin的編程教室 - 本站專欄

NBA 舉辦編程馬拉松 - 數(shù)據(jù)分析時(shí)代的到來(lái) - Crossin的文章 - 本站專欄

想用 Python 做數(shù)據(jù)分析?先玩玩這個(gè)再說(shuō) - Crossin的文章 - 本站專欄

用 Python 實(shí)現(xiàn)你的量化交易策略 - Crossin的文章 - 本站專欄

Python 抓取網(wǎng)頁(yè)亂碼原因分析 - Crossin的編程教室 - 本站專欄

Crossin的編程教室




微信ID:crossincode

論壇:Crossin的編程教室



74
73
25
news

版權(quán)所有? 億企邦 1997-2022 保留一切法律許可權(quán)利。

為了最佳展示效果,本站不支持IE9及以下版本的瀏覽器,建議您使用谷歌Chrome瀏覽器。 點(diǎn)擊下載Chrome瀏覽器
關(guān)閉