从zip文件的内容创建Apache虚拟目录

时间:2011-12-07 18:10:07

标签: apache zip virtual-directory vfs

我有一些带有静态HTML内容的压缩zip文件(例如,文档的目录树,其中有几个相互链接的静态html页面,图像,css等)例如,javadoc zip文件用作等同于我的目的。

我的问题是,如果有一个apache模块允许apache将zip文件“挂载”为虚拟目录,其内容是zip文件的内容。我正在托管apache的操作系统是Mac OS X Snow Leopard。

3 个答案:

答案 0 :(得分:3)

zip filesystemFUSE,OS X通过MacFUSE项目支持该{{3}}。这将允许您通过mount命令安装zip文件,从而允许Apache - 或任何其他应用程序 - 作为普通目录访问其内容。

我目前没有方便的Mac,所以我实际上无法测试它。

答案 1 :(得分:2)

我不知道有任何现有的Apache模块可以执行此操作,但是您可以通过添加处理ZIP存档访问权限的CGI脚本来实现它而无需触及Apache内部:

Action zip-archive /cgi-bin/ziphandler.cgi
AddHandler zip-archive .zip

这将使ziphandler.cgi对所有.zip文件的访问调用,或者(更重要的是!)调用.zip文件下“目录”中的文件。从那里开始,它应该非常简单。

答案 2 :(得分:0)

使用proxy_http,您可以将请求转发给Jetty,它将为任何ZIP文件提供服务。

从这里下载Jetty Runner:http://mvnrepository.com/artifact/org.eclipse.jetty/jetty-runner

您可以使用例如java -jar jetty-runner-9.3.0.M2.jar --port 8082 myZIPFile.zip。现在设置Apache以将请求转发到localhost:8082。即使只有一个子目录,也可以这样做。