2013-07-17 24 views
5

私はウェブ開発について何も知らず、勉強する最善の方法は始めに飛び跳ねることだと考えました。これが些細なことであれば謝罪してください。ウェブページの静的ファイルの提供

私はbuilding a webpage in goのチュートリアルに従っています。チュートリアルのすべては理解しやすいものですが、私はそれを拡張しようとしています。具体的には、いくつかの静的ファイル(画像)を追加しようとしています。私は、外出先のドキュメントを通過するとFileServer渡って来て、私のハンドラで

http.ServeFile(w, r, "/home/jeff/web/foo.jpg") 

を追加私が提供されている画像を参照してくださいが、それは私が与えて試してみた*テンプレート

<h1>{{.Title}}</h1> 
<p>[<a href="/edit/{{.Title}}">edit</a>]</p> 

<img src="foo.jpg" alt="moooooo"> 
<img src="foo.jpg" alt="foooooo"> 

<div>{{printf "%s" .Body}}</div> 

を使用していないされてきました画像への完全なパス。

私がしようとしているのは、画像をテンプレートに慎重に置いたhtmlタグを占有することです。

enter image description here

私はイメージが、私はそれらを教えてどこに表示され、彼らがあるべき空白の画像を取得したいです。ファイルが見つからないというエラーは表示されません。

私はこれがうまくいくと思います(これはもう経験はありません)。私はこのディレクトリにいくつかの静的なファイルがあります。これは簡単ではないようです。私は間違って何をしていますか?これをどのように機能させることができますか?

私はイメージがテンプレートに異なるURLパスから提供されなければならないApacheや他のいくつかのWebサーバ

答えて

8

を使用していない他の言葉で私のmainhttp.ListenAndServe(":8080", nil)を使用しています。

あなたは静的ファイルのようなもの使用してから提供される場所を定義する必要があります。

http.Handle("/static/", http.StripPrefix("/static/", http.FileServer(http.Dir("/home/jeff/web/")))) 

をしてから<IMG>ソースのURLのようなものであることを確認してください:

<img src="/static/foo.jpg" alt="moooooo"> 

お役に立てば幸いです。

関連する問題