Apache 在 VirtualHost 中提供静态文件

Apache 在 VirtualHost 中提供静态文件

我有以下 VirtualHost 配置。

<VirtualHost *:80>
        ServerName myservername.website

        <Location />
                ProxyPass http://localhost:5000/
                ProxyPassReverse http://localhost:5000/
        </Location>
</VirtualHost>

目前,应用程序正在为 /var/www/static 中一系列静态文件ProxyPass提供服务。我宁愿让 Apache 来提供这些服务。

我不知道如何直接说“当收到对 /static 的请求时,则从文件系统上的 /var/www/static 提供该请求”。我该怎么做?

答案1

例如,您可以使用 mod_rewrite

http://httpd.apache.org/docs/current/fr/mod/mod_rewrite.html

<VirtualHost *:80>
    ServerName myservername.website
    DocumentRoot /var/www/
    RewriteCond %{REQUEST_URI} !/static/
    RewriteRule (.*) http://localhost:5000/ [P]
</VirtualHost>

答案2

Alias /static "/var/www/static"
<Directory "/var/www/static">
    Options FollowSymLinks
</Directory

相关内容