账号密码登录
微信安全登录
微信扫描二维码登录

登录后绑定QQ、微信即可实现信息互通

手机验证码登录
找回密码返回
邮箱找回 手机找回
注册账号返回
其他登录方式
分享
  • 收藏
    X
    Django图片显示不出来,提示 The requested URL was not found on this server
    28
    0

    1、Django图片显示不出来,路径是对的,服务器提示 1The requested URL was not found on this server

    下面是相关代码和截图:

    settings.py

    
    STATIC_URL = '/static/'
    
    STATIC_ROOT = os.path.join(BASE_DIR, 'static')
    
    MEDIA_URL = '/upload/'
    MEDIA_ROOT = os.path.join(BASE_DIR, 'upload').replace("\\", "/")
    

    urls.py

    # -*- coding: utf-8 -*-
    
    from django.conf.urls.static import static
    from django.conf.urls import url 
    from django.conf import settings
    
    
    from . import views
    
    app_name = 'yanji'
    urlpatterns = [
        url(r'^$', views.IndexView.as_view(), name='index'),
        url(r'^actor/$', views.ActorView.as_view(), name='actor_list'),
        url(r'^yanji/(?P<pk>[0-9]+)/$', views.YanjiDetailView.as_view(), name='detail'),
    ...
    
    ] + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT)
    
    
    

    models.py

    @python_2_unicode_compatible
    class Actor(models.Model):
        name = models.CharField(verbose_name='演员', max_length=100)
        touxiang = models.ImageField(verbose_name='头像', upload_to='yanyuan_tx/', null=True, blank=True)
        ctime = models.DateTimeField(verbose_name='添加时间', null=True, default=timezone.now)
        ptitle = models.ForeignKey(Ptitle, blank=True)
    

    templates/index.html

              {% for actor in actor_list %}            
                <a class="thumbnail" href="{% url 'yanji:actor' actor.pk %}">
                    <div class="swiper-slide">
                          <img src="/upload/{{ actor.touxiang }}" alt="{{ actor.name }}"/>
                          <!-- <br> -->
                          <p>{{ actor.name }}</p>
                        </div>
                    </a>            
              {% empty %}
                        <div class="no-actor">暂时无数据</div>
              {% endfor %} 

    nginx配置:actorgogo.com

    server {
        charset utf-8;
        listen 80;
        server_name actorgogo.com;
    
        location /static {
            alias /home/zxd/sites/actorgogo.com/actorgogo/static;
        }
    
        location / {
            proxy_set_header Host $host;
    
    
    server {
            proxy_pass http://unix:/tmp/actorgogo.com.socket;
        }
    }

    在本地测试都可以,部署到服务器就图片显示不出来,css、js都正常。

    图片路径在新标签打开是这个:

    Not Found

    The requested URL /upload/yanyuan_tx/2fb5455474997031fed4fc3798c81475.jpg was not found on this server.

    不知道是什么原因?

    0
    打赏
    收藏
    点击回答
        全部回答
    • 0
    更多回答
    扫一扫访问手机版
    • 回到顶部
    • 回到顶部