重定向到https ...但只有一个

时间:2017-07-07 13:58:14

标签: apache .htaccess redirect

我遇到了问题 我有一个网站,我必须始终重定向到https ...除了一页,因为我使用ATOS SIPS,它不接受ssl。

所以我的页面我还没有改写是这样的: example.com/paiement-debiteurs?task=retour

只有THIS参数。 我的htaccess做到了这一点:

RewriteEngine On
RewriteCond %{SERVER_PORT} 80
RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]

在此之前我尝试了很多东西

我工作过的最好的就是这个,放在前面:

RewriteCond %{QUERY_STRING} (^|.*&)task=retour(&.*|$)
RewriteRule ^paiement-debiteurs$ - [L]

如果我用任何页面替换-,它运行良好并将我重定向到该页面。但是,如果我离开那个破折号,它会转到404(并且仍然会将我重定向到https!)

我搜索了很多并且没有理解如何告诉apache“你看到那个页面?如果它的http不会将它重定向到https。这个页面只有这个页面!”

你能帮帮我吗? 感谢

编辑:有我的整个htaccess  :

## Mod_rewrite
RewriteEngine On
RewriteBase /

## Begin - Rewrite rules to block out some common exploits.
RewriteCond %{QUERY_STRING} base64_encode[^(]*\([^)]*\) [OR]
RewriteCond %{QUERY_STRING} (<|%3C)([^s]*s)+cript.*(>|%3E) [NC,OR]
RewriteCond %{QUERY_STRING} GLOBALS(=|\[|\%[0-9A-Z]{0,2}) [OR]
RewriteCond %{QUERY_STRING} _REQUEST(=|\[|\%[0-9A-Z]{0,2})
RewriteRule .* index.php [F]

RewriteEngine On
RewriteCond %{QUERY_STRING} (^|.*&)task=retour(&.*|$)
RewriteRule ^paiement-debiteurs$ - [L]




RewriteEngine On
RewriteCond %{SERVER_PORT} 80

RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]


## Begin - Joomla! core SEF Section.
RewriteRule .* - [E=HTTP_AUTHORIZATION:%{HTTP:Authorization}]
RewriteCond %{REQUEST_URI} !^/index\.php
RewriteCond %{REQUEST_URI} /component/|(/[^.]*|\.(php|html?|feed|pdf|vcf|raw))$ [NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php [L]
AddHandler x-mapp-php6  .php

删除行RewriteRule ^(.*)$ https://example.com/$1 [R=301,L]会删除https重定向

0 个答案:

没有答案