最近開始學(xué)著用Python+Tornado+MongoDB寫網(wǎng)站,興起寫了一個博客,覺得很有意思所以想掛在服務(wù)器上發(fā)布出去找大家一起玩。這個時候就遇到了問題。
服務(wù)器是windows系統(tǒng),安裝的是Apache,所以需要配置Apache,使Apache同時支持PHP和Python。
廢話少說,提供有效方案一個,照做即可:
1. 修改 httpd.conf 文件
將下列幾個Module前的注釋符 # 去掉
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
LoadModule proxy_http_module modules/mod_proxy_http.so
2. 配置 httpd-vhosts.conf 文件
ServerName http://b06.suosikeji.com?? #這是你要解析的網(wǎng)站地址
ServerAdmin me@chengkang.pw
ProxyRequests Off
Order deny,allow
Allow from all
proxypass / http://127.0.0.1:8002/?? #這里是你的python站點的地址
proxypassreverse / http://127.0.0.1:8002/? #同上
3. 重啟 Apache
以上就是我的成功案例。
網(wǎng)上還查到一個方法是通過nginx配置反向代理,我試了一個多小時然后放棄了。之前沒接觸過nginx,所以出了問題也不知道該怎么解決。其中讓我氣得要吐血的一個問題是:
nginx文件夾始終為“只讀”,怎么改也改不了……導(dǎo)致nginx.exe無法運行……
要是哪位朋友有解決方案,望不吝賜教。
關(guān)于反向代理的初步認識:
以我的網(wǎng)站為例,博客運行在服務(wù)器本地8002端口,即 http://127.0.0.1:8002。我要解析的域名為 http://b06.suosikeji.com。
由于服務(wù)器環(huán)境為Apache,所以外面無法直接訪問服務(wù)器上未在Apache中配置的某個端口,所以需要進行反向代理的配置。
配置好反向代理之后,當(dāng)用戶訪問 http://b06.suosikeji.com/add 頁面時,服務(wù)器Apache收到請求,將其轉(zhuǎn)換為 http://127.0.0.1:8002/add 交給Python處理,并將Python處理出的結(jié)果返回,這樣用戶就看到了正確的頁面。
(今天下午亂查資料后的簡單理解,望對“反向代理”有正確深入理解的朋友指教。)
自學(xué)最痛苦的是碰到困難查資料很難直接查到有用的資料,廢話看了一大堆卻沒有一個明確的解決方案。我個人確實屬于那種不認真學(xué)習(xí)的,喜歡拿過什么來最好能直接就用。所以最近我在總結(jié)一些自學(xué)過程中的經(jīng)驗,將以解決方案(+學(xué)習(xí)反思)的形式整理成文,慢慢分享出來。
希望我的總結(jié)能夠給其他自學(xué)者一些實際的幫助。
更多文章、技術(shù)交流、商務(wù)合作、聯(lián)系博主
微信掃碼或搜索:z360901061

微信掃一掃加我為好友
QQ號聯(lián)系: 360901061
您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。
【本文對您有幫助就好】元
