رفتن به مطلب
  • 0

لود نشدن فایل‌های Css (استاتیک) در جنگو


Salar82

سوال

سلام به همه

اخیرا یه پروژه رو با جنگو پیاده کردم، الان آپلودش کردم رو سرور، وقتی تو فایل Setting دیباگ رو False می‌ذارم، تو پیج ادمین، Css ها لود نمیشن متاسفانه.

آیا راه حلی هست؟

 

پیشاپیش از راهنمایی شما سپاسگزارم. :53:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

9 پاسخ به این سوال تاکنون داده شده است

ارسال‌های توصیه شده

مشکل برطرف شد:

yun.ir/sc2h4e

 

مشکل این بود که بعد از مشخص کردن STATIC_ROOT، باید کد زیر رو به url ها اضافه می‌کردیم که من اینکار رو نکرده بودم:

from django.contrib import admin
from django.urls import path

from django.conf.urls import url #Add this line
from django.conf import settings #Add this line
from django.views.static import serve #Add this line

urlpatterns = [
    path('admin/', admin.site.urls),
    url(r'^static/(?P<path>.*)$', serve,{'document_root': settings.STATIC_ROOT}), #Add this line
]

 

از @ محمدرضا شاهپیری  بابت راهنمایی‌ها متشکرم :53:

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در ۱۴۰۰/۵/۲۵ در 13:55، محمدرضا شاهپیری گفته است:

تنظیم بالا فقط برای تست روی لوکال هست.نباید رو سرور این تنظیم رو انجام بدید.

و اینکه چک کنید ببیننید فایلهای استاتیک تو مسیری که دادین کپی شده یا نه

این مسیر فایل های استاتیک:

STATIC_URL = '/static/'
STATIC_ROOT = '/home/Admin/public_html/python/static'

 

مسیر پروژه:

'/home/Admin/public_html/python/'

 

ظاهرا فایل ها هم کپی شدن:

137463180_Annotation2021-08-16173856.jpg.cc903527d82b4ce455e831c28818c255.jpg

 

 

این کد فایل پسنجر:

from project.wsgi import application

 

 

برای collectstatic هم این پیغام رو میده:

0 static files copied to '/home/Admin/public_html/python/static', 128 unmodified.

 

ولی متاسفانه هنوز پیج ادمین درست لود نمیشه:

1277559780_scrnli_8_16_2021_6-03-28PM.png.d1351dd4c3c4a31cc72bc57e855e473b.png

 

 

دیباگ هم غیر فعال هست.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

خب خدا رو شکر. البته من قبلا از هاست استفاده میکردم این مشکل نبود.

اگه برا تست دارین کار میکنین که هیچی ولی اگه میخوای پروژه ای رو توسعه بدین اکیدا توصیه میشه سرور بگیرید و خودتون کانفیگ کنید. چون بعدا به مشکل میخورین قطعا

لینک ارسال
به اشتراک گذاری در سایت های دیگر

سلام و درود.

وب سرور و کنترل پنلتون چی هست؟ چون تو هر کدوم متفاوته تنظیماتش

لینک ارسال
به اشتراک گذاری در سایت های دیگر

هاست رو از توشن گرفتم:

https://toshan.net/web-hosting/python

 

کنترل پنل هم Cpanel هست.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

برای Cpanel باید مسیر فایلهای استاتیک حتما توی پوشه public_html باشه و توی settings.py هم مسیر مستقیم رو بدین. مثلا به شکل زیر

STATIC_ROOT = "/home/admin/domains/answercenter.ir/public_html/static/"

بعد حتما باید دستور collectstatic رو بزنید

لینک ارسال
به اشتراک گذاری در سایت های دیگر

مسیر رو بصورت دستی وارد کردم و collectstatic هم زدم. حتی طبق خود داکیومنت جنگو :

https://docs.djangoproject.com/en/3.2/howto/static-files/

 

urlpatterns = [
    # ... the rest of your URLconf goes here ...
] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

این رو هم اضافه کردم و مشکل تو حالت دیباگ برطرف شد. اما وقتی Debug رو تو فایل setting برابر False گذاشتم، دوباره css لود نشد متاسفانه.

لینک ارسال
به اشتراک گذاری در سایت های دیگر

در ۱۴۰۰/۵/۲۵ در 12:12، Salar82 گفته است:
urlpatterns = [
    # ... the rest of your URLconf goes here ...
] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT)

تنظیم بالا فقط برای تست روی لوکال هست.نباید رو سرور این تنظیم رو انجام بدید.

و اینکه چک کنید ببیننید فایلهای استاتیک تو مسیری که دادین کپی شده یا نه

لینک ارسال
به اشتراک گذاری در سایت های دیگر

بایگانی شده

این موضوع بایگانی و قفل شده و دیگر امکان ارسال پاسخ نیست.

  • کاربران آنلاین در این صفحه   0 کاربر

    • هیچ کاربر عضوی،در حال مشاهده این صفحه نیست.
×
×
  • اضافه کردن...