欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Django部署到服務(wù)器后無(wú)法獲取到靜態(tài)元素 The requested resource was not found on this server(問(wèn)題及解決方案)

 更新時(shí)間:2024年02月06日 11:00:43   作者:偷學(xué)技術(shù)的梁胖胖yo  
寫了一個(gè)Django項(xiàng)目,部署到云主機(jī)后,訪問(wèn)發(fā)現(xiàn)圖片無(wú)法訪問(wèn),報(bào)錯(cuò)The requested resource was not found on this server,下面給大家介紹Django部署到服務(wù)器后無(wú)法獲取到靜態(tài)元素The requested resource was not found on this server(問(wèn)題及解決方案),需要的朋友可以參考下

問(wèn)題描述

寫了一個(gè)Django項(xiàng)目,部署到云主機(jī)后,訪問(wèn)發(fā)現(xiàn)圖片無(wú)法訪問(wèn),報(bào)錯(cuò)The requested resource was not found on this server
圖片是一個(gè)詞云圖,根據(jù)爬蟲爬取的信息生成的,根據(jù)爬取的信息會(huì)改變,所以沒(méi)有把圖片放在nginx中,而是直接獲取Django的圖片

原因分析:

直接原因是因?yàn)榘l(fā)布到服務(wù)器,將DEBUG設(shè)置成False

根本原因是,DEBUG模式下,Django本身相當(dāng)于一個(gè)liveServer,默認(rèn)可以加載靜態(tài)元素,我們可以將靜態(tài)元素放入一個(gè)目錄,配置一個(gè)URL 就可以獲取

代碼:

# settings.py
STATIC_URL = "static/"
import os
STATIC_ROOT = (
    os.path.join(BASE_DIR, 'app1/static')
)
STATICFILES_DIRS = (
    # 收集靜態(tài)元素,保存到項(xiàng)目同級(jí)別目錄static下
    os.path.join(BASE_DIR, 'static'),
)

settings.py下三個(gè)配置項(xiàng):
STATIC_URL 配置的請(qǐng)求靜態(tài)元素的URL,默認(rèn)是static,比如要訪問(wèn)1.png,訪問(wèn)地址就是http://xxx.xxx.xxx.xxx/static/1.png
STATIC_ROOT配置的靜態(tài)元素的存放的路徑,也就是1.png存放的路徑。另外,當(dāng)項(xiàng)目部署時(shí),使用python manage.py collectstatic將所有靜態(tài)元素保存在此路徑
STATICFILES_DIRS這個(gè)配置不影響訪問(wèn),可以理解是一個(gè)公共路徑,可以將多個(gè)app的靜態(tài)元素保存在這個(gè)路徑,Django會(huì)優(yōu)先查找此路徑,再查找app下的STATIC_ROOT

當(dāng)DEBUG=False時(shí),可以Django只是一個(gè)后端服務(wù)器,不再提供靜態(tài)元素展示,所以訪問(wèn)靜態(tài)元素時(shí)就會(huì)報(bào)錯(cuò)The requested resource was not found on this server

解決方案:

將靜態(tài)元素也通過(guò)url路由的方式暴露出來(lái),通過(guò)路由方式訪問(wèn)
也就是Django提供的內(nèi)置視圖
官網(wǎng):https://docs.djangoproject.com/zh-hans/4.1/ref/views/

# settings.py
STATIC_ROOT = (
    os.path.join(BASE_DIR, 'app1/static')
)
# urls.py
from django.urls import path, include, re_path
from django.conf import settings
from django.views.static import serve
urlpatterns = [
    path("admin/", admin.site.urls),
    path("largescreen/", include("carlargescreen.urls")),
    re_path(r'^images/(?P<path>.*)$', serve, {'document_root': settings.STATIC_ROOT }),
]

訪問(wèn)http://xxx.xxx.xxx.xxx/images/1.png ,就會(huì)訪問(wèn)到app1/static/1.png

到此這篇關(guān)于Django部署到服務(wù)器后無(wú)法獲取到靜態(tài)元素 The requested resource was not found on this server的文章就介紹到這了,更多相關(guān)Django部署到服務(wù)器無(wú)法獲取到靜態(tài)元素內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • 100 個(gè) Python 小例子(練習(xí)題二)

    100 個(gè) Python 小例子(練習(xí)題二)

    這篇文章主要繼續(xù)上一篇文章100 個(gè) Python 小例子(練習(xí)題一)來(lái)完成100 個(gè) Python 小例子,本文包括字母識(shí)詞、反向輸出II、表轉(zhuǎn)字符串、設(shè)置輸出顏色、算素?cái)?shù)等例子,需要的朋友可以參考一下
    2021-10-10
  • Python編寫單元測(cè)試代碼實(shí)例

    Python編寫單元測(cè)試代碼實(shí)例

    這篇文章主要介紹了Python編寫單元測(cè)試代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-09-09
  • python使用tkinter實(shí)現(xiàn)透明窗體上繪制隨機(jī)出現(xiàn)的小球(實(shí)例代碼)

    python使用tkinter實(shí)現(xiàn)透明窗體上繪制隨機(jī)出現(xiàn)的小球(實(shí)例代碼)

    今天教大家怎么實(shí)現(xiàn)Tkinter透明窗體,在上篇文章給大家介紹過(guò)透明窗體上繪制小球,今天接著通過(guò)實(shí)例代碼給大家分享python使用tkinter實(shí)現(xiàn)透明窗體上繪制隨機(jī)出現(xiàn)的小球的實(shí)例代碼,感興趣的朋友跟隨小編一起看看吧
    2021-05-05
  • Python人工智能之路 jieba gensim 最好別分家之最簡(jiǎn)單的相似度實(shí)現(xiàn)

    Python人工智能之路 jieba gensim 最好別分家之最簡(jiǎn)單的相似度實(shí)現(xiàn)

    這篇文章主要介紹了Python人工智能之路 jieba gensim 最好別分家之最簡(jiǎn)單的相似度實(shí)現(xiàn) ,非常不錯(cuò),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2019-08-08
  • 全面了解Python環(huán)境配置及項(xiàng)目建立

    全面了解Python環(huán)境配置及項(xiàng)目建立

    下面小編就為大家?guī)?lái)一篇全面了解Python環(huán)境配置及項(xiàng)目建立。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧
    2016-06-06
  • tensorflow使用神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)mnist分類

    tensorflow使用神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)mnist分類

    這篇文章主要為大家詳細(xì)介紹了tensorflow使用神經(jīng)網(wǎng)絡(luò)實(shí)現(xiàn)mnist分類,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • Python 利用scrapy爬蟲通過(guò)短短50行代碼下載整站短視頻

    Python 利用scrapy爬蟲通過(guò)短短50行代碼下載整站短視頻

    近日,有朋友向我求助一件小事兒,他在一個(gè)短視頻app上看到一個(gè)好玩兒的段子,想下載下來(lái),可死活找不到下載的方法。經(jīng)過(guò)我的一番研究才找到解決方法,下面小編給大家分享Python 利用scrapy爬蟲通過(guò)短短50行代碼下載整站短視頻的方法,感興趣的朋友一起看看吧
    2018-10-10
  • 使用python把Excel中的數(shù)據(jù)在頁(yè)面中可視化

    使用python把Excel中的數(shù)據(jù)在頁(yè)面中可視化

    最近學(xué)習(xí)數(shù)據(jù)分析,感覺(jué)Python做數(shù)據(jù)分析真的好用,下面這篇文章主要給大家介紹了關(guān)于如何使用python把Excel中的數(shù)據(jù)在頁(yè)面中可視化的相關(guān)資料,需要的朋友可以參考下
    2022-03-03
  • python3?queue多線程通信

    python3?queue多線程通信

    這篇文章主要介紹了python3?queue多線程通信,??Queue???對(duì)象已經(jīng)包含了必要的鎖,所以你可以通過(guò)它在多個(gè)線程間多安全地共享數(shù)據(jù),更多相關(guān)內(nèi)容需要的朋友可以參考一下下文文章內(nèi)容
    2022-07-07
  • django寫用戶登錄判定并跳轉(zhuǎn)制定頁(yè)面的實(shí)例

    django寫用戶登錄判定并跳轉(zhuǎn)制定頁(yè)面的實(shí)例

    今天小編就為大家分享一篇django寫用戶登錄判定并跳轉(zhuǎn)制定頁(yè)面的實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2019-08-08

最新評(píng)論