2015-02-06 4 views
0

안녕하세요 저는 웹 프로그램에서 파이썬을 처음 사용하고 CSS 스타일 시트를 사용하는 기본 웹 사이트를 만들려고합니다. app.py, index.html 및 style.css의 세 파일이 있습니다. 그들은 모두 같은 디렉토리에 있습니다. app.py를 실행하고 localhost : 8080으로 이동하면 "Hello World!"가 표시되지만 style.css 파일의 스타일이 아니며 터미널에 "HTTP/1.1 GET /style.css"라고 - 404 찾을 수 없음 . 그러나 app.py 파일을 사용하지 않고 chrome에서 index.html 파일을 열면 스타일 서식이 적용됩니다. 어떤 도움이 필요합니까? 미리 감사드립니다. 다음과 같이 내 코드는 다음과 같습니다Python이 CSS 파일을 찾지 못함

app.py :

import web 

urls = (
    '/', 'Index' 
) 

app = web.application(urls, globals()) 

web.config.debug = True 

class Index(object): 

    def __init__(self): 
     self.render = web.template.render('.') 

    def GET(self): 
     return self.render.index() 

if __name__ == '__main__': 
    app.run() 

index.html을 :

<!DOCTYPE html> 
<html> 
    <head> 
     <link type="text/css" rel="stylesheet" href="style.css" /> 
     <title>Basic Web Project</title> 
    </head> 
    <body> 
     <p>Hello World!</p> 
    </body> 
</html> 

있는 style.css :

p { 
    color: green; 
    font-size: 22px; 
} 

답변

0

당신이 당신의 웹 브라우저에 다음과 같은 말을 <link type="text/css" rel="stylesheet" href="style.css" />을 지정 (404) 다음있는 style.css가 index.html을 같은 수준에

날 당신과 예를 들어 보겠습니다 :

/app 
    index.html 
    style.css 
에게 이 브라우저 때문에 file://some/directory/app/과 동일

당신은 다음 URL을

file://some/directory/app/index.html 

에 브라우저에서 열린 index.html을 갈 경우) 이 index.html에서 브라우저가 지정한 URL이 <link> 인 경우 file://some/directory/app/style.css 에있는 style.css을 검색하고 해당 파일을 찾습니다. 물론 웹 페이지를 표시 할 때 색인을 검색합니다.

이제 재미있는 부분입니다.

당신이 localhost:8080을 열 때 귀하의 웹 응용 프로그램 (사용자가 실행하는 파이썬 스크립트) 누군가가 해당 URL로 이동 할 때 urls 변수에 정의되어 있기 때문에 (무엇을 알고 있기 때문에 작동 localhost:8080/index.html를 표시하고 사용자가 class 것을 만들어)

그러나이 페이지에서 브라우저가 <link> 태그를 찾으면 그는 앱에서 지정하지 않았기 때문에 웹 앱이 처리 방법을 모르는 localhost:8080/style.css으로 이동하려고합니다.

해결책 : 해당 웹 페이지를 렌더링 할 /style.cssclass에 대한 URL을 정의해야합니다.

+0

이렇게했습니다. 고맙습니다! – jkesh

0

은 당신이 style.css를 추가하는 것을 시도했다 urls, 귀하의 응용 프로그램은 /style.css 요청에 대해 아무것도 모릅니다. 반환

관련 문제