问题描述
我正在尝试创建一个使用URL下载服务器上文件的功能。 我在Tomcat 9上运行了APEX。在服务器上,有一个/ folder / files路径,其中包含我想使用url下载的文件。我发现例如可以从URL为easilly的/ i /文件夹下载文件,例如http:// {host}:{port} /i/css/apex.css。我试图在该文件夹中创建/ folder / files的快捷方式。 现在有一个路径./i/files/。当我输入http:// {host}:{port} /i/files/file1.pdf时,我得到了404。
我该如何管理呢?还是有更好的方法呢?
解决方法
APEX并非旨在以这种方式提供静态文件。 / i /目录结构是预定义的,不一定像您想象的那样指向服务器上的物理位置。最好的选择是将自定义文件放在单独的Web服务器上(例如,很多人在Tomcat之前使用反向代理),然后从那里使用“常规”静态URL加载它们。
,我找到了简单的解决方案。只需添加到server.xml行
<Context docBase="/folder/files" path="/files"/>
现在,您必须记住用户具有从该路径读取/执行/搜索的特权(同一所有者,或者组或其他用户的特权)。 现在,我可以轻松使用APEX中的网址(http:// {host}:{port} /files/file1.pdf)