2011-05-12 64 views
1

我需要从用户计算机上的文件夹中抓取一些图像,并使用webrick服务器将其显示在网页上。我正在使用以下代码来扫描目录,然后将路径包含到Web服务器。我正在获取图像的正确路径,但是当我尝试访问该页面时,我收到了来自Webrick的错误404。我一直在移动文件和更改权限没有任何成功。我有一种感觉,webrick是从埋在usr文件夹中的位置运行的,但我不知道如何检查它以及如何正确地为它创建图像路径。任何帮助将不胜感激。使用Webrick服务图像

require 'webrick' 
include WEBrick 

s = HTTPServer.new(Port: 2000) 

class HelloServlet < HTTPServlet::AbstractServlet 

def do_GET(req, res) 

    search_dir = 'users/user/Dropbox/ads_dir' 
    files = Dir[ search_dir + '/*.jpg'] 
    p @file0 = files[0].to_s  
    p @file1 = files[1].to_s  
    p @file2 = files[2].to_s  
    p @file3 = files[3].to_s 

res['Content-Type'] = "text/html" 
res.body = %{ 
     <img class="img1" src="#{@file0}"/> 
     <img class="img2" src="#{@file1}"/> 
     <img class="img3" src="#{@file2}"/>  
     <img class="img4" src="#{@file3}"/> 
    </body> 
    </html> 
} 

回答

1

如果你的图片路径是一样/home/users/images你应该声明DocumentRoot

s = HTTPServer.new(Port: 2000, DocumentRoot: "/home/users") 

然后你就可以访问图像:

http://localhost/images/image1.jpg 
+0

感谢纳什,这完美地工作。 – tsugua 2011-05-14 04:05:52

+0

欢迎您!顺便说一下,你可以接受答案:) – 2011-05-14 06:10:52