我有一个 Apache 配置为有一个完整的网站使用 ssl
和没有 ssl
(只有 http
),但我想只需在 https://www.mydomain.com/controller/action/params
处使用 ssl
,其中 controller 不是目录。换句话说,https://www.mydomain.com/
或 https://www.mydomain.com/*
不应可访问。
有人知道怎么做吗?
附言现在我正在尝试在 .htaccess
文件中使用以下代码,但仍然没有成功。
RewriteCond %{SERVER_PORT} 443
RewriteCond %{REQUEST_URI} !controller/action/*
RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI} [R,L]
最佳答案
request_uri 以“/”开头。您也可以只使用“*”,在这种情况下星号表示 0 个或多个“/”字符。它应该看起来更像:
RewriteCond %{SERVER_PORT} 443
RewriteCond %{REQUEST_URI} !/controller/action/.*
RewriteRule ^(.*)$ http://%{HTTP_HOST}%{REQUEST_URI} [R,L]
关于apache - 禁止 https 访问整个网站,但只为一个 url 启用它,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7111141/