【问题标题】:How to set the scheme tomcat?如何设置方案tomcat?
【发布时间】:2017-12-15 18:23:04
【问题描述】:

: 之前的 URL 部分称为“方案”。示例包括“http”、“https”、“ftp”以及“file”。

scheme 告诉浏览器用 URL 的其余部分“做什么”,不同的 scheme 在 : 之后可以有不同的格式。

我只需要知道要编辑的配置文件和要使用的语法。我需要允许 Tomcat 服务本地文件请求:

<a href="file://///server/Attachments/area/17-00123/">Case Folder</a>

这在我们升级 Tomcat 之前就可以工作,所以我知道它是可能的。

这是我目前发现的。

Apache Tomcat Configuration Reference - See Scheme Section

【问题讨论】:

    标签: java apache tomcat


    【解决方案1】:

    在 Tomcat 中配置此类东西的通常位置是 &lt;tomcat&gt;/conf/server.xml&lt;Connector&gt; 元素。这是来自默认 server.xml 的引用:

    <!-- A "Connector" represents an endpoint by which requests are received
         and responses are returned. Documentation at :
         Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)
         Java AJP  Connector: /docs/config/ajp.html
         APR (HTTP/AJP) Connector: /docs/apr.html
         Define a non-SSL HTTP/1.1 Connector on port 8080
    -->
    <Connector port="8080" protocol="HTTP/1.1"
               connectionTimeout="20000"
               redirectPort="8443" />
    

    话虽如此,我要指出我从未见过“文件”连接器的配置。

    我看到 Tomcat 配置为通过 http 或 https 提供静态文件。更多详情请见this page

    Tomcat 可以配置为从磁盘上的任何位置读取文件并提供服务 它们在特定的 URL 上。此配置完全独立于 你的应用程序配置——如果你愿意,你可以启动 Tomcat 并让它从磁盘提供静态文件,而不运行 webapps。这 配置在 Tomcat 的 server.xml 配置文件中,看起来 像这样(需要添加的位是红色的):

         <Host appBase="webapps"
           autoDeploy="false" name="localhost" unpackWARs="true"
           xmlNamespaceAware="false" xmlValidation="false">
    ...
           <Context docBase="/home/stuff" path="/static" />
    

    在元素内部添加一个元素。 Context 有两个属性: docBase 是磁盘上的目录 包含您的静态文件,路径是您要提供的 URL 上的文件。

    【讨论】:

    • 谢谢,在我问这个问题之前,我们已经做出了这个改变。此解决方案的问题是我们失去了 AD NTFS 安全性。正在运行的帐户 tomcat 需要访问该文件夹。这使得有权访问该 URL 的每个人都可以访问该文件夹中的所有文件。然后我们需要根据 NTFS 权限进行访问。
    猜你喜欢
    • 2014-05-20
    • 1970-01-01
    • 1970-01-01
    • 2013-09-12
    • 2011-02-27
    • 1970-01-01
    • 2018-07-24
    • 2010-12-17
    • 2021-07-16
    相关资源
    最近更新 更多