You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Apache服务器如何排除kameras目录的HTTPS强制重定向?

解决Apache中排除指定目录HTTPS重定向的方法

你当前配置里的Redirect / https://www.example.de/是全局强制重定向,它的优先级比mod_rewrite规则更高,导致后面的RewriteCond规则完全无法生效,这是问题的核心。

正确的配置需要两步调整:

  1. 移除全局的Redirect /指令,改用mod_rewrite统一处理重定向逻辑
  2. 编写精准的规则,排除/kameras/目录下的所有请求

修改后的000-default.conf配置如下:

<VirtualHost *:80>
# ServerName www.example.de
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html

ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined

RewriteEngine on
# 排除/kameras/目录及其下所有子内容
RewriteCond %{REQUEST_URI} !^/kameras(/.*)?$
# 匹配目标域名(支持example.de和www.example.de)
RewriteCond %{SERVER_NAME} =example.de [OR]
RewriteCond %{SERVER_NAME} =www.example.de
# 执行HTTPS永久重定向
RewriteRule ^ https://%{SERVER_NAME}%{REQUEST_URI} [END,NE,R=permanent]
</VirtualHost>

配置细节说明:

  • 移除全局Redirect /指令,避免覆盖后续重定向规则
  • RewriteCond %{REQUEST_URI} !^/kameras(/.*)?$:匹配所有不以/kameras/开头的请求,包括/kameras本身、子目录及文件
  • 用[OR]连接两个域名条件,确保主域名和带www的域名都能触发重定向
  • 保留[END,NE,R=permanent]标记,保证重定向的永久性和URL格式正确性

修改完成后,执行以下命令重启Apache使配置生效:

sudo systemctl restart apache2

调整后,/kameras/目录下的所有页面会保持HTTP访问,不会被强制跳转到HTTPS,即可正常嵌入HTTP摄像头的iframe内容。

内容的提问来源于stack exchange,提问作者Michèle S.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 23:57:27