https:// www重定向不使用页面参数

时间:2016-08-29 08:23:02

标签: apache .htaccess redirect mod-rewrite https

我将http://example.com或www.example.com等所有请求重定向到https://www.example.com,如本问题所述:

How to redirect all HTTP requests to HTTPS

因此,所有请求都会重定向到 https://www

仅当我不需要重定向http://www.example.com/page123

等网址时,此功能才有效

当我尝试这个时,会被重定向到 https://www.example.com/index.php?page=page123

因此,当我重定向到 https://www

时,我的页面参数的重写规则不再起作用了

以下是.htacces:

Options +FollowSymLinks
RewriteEngine on

RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME} !-f

RewriteRule ^([^/]+)/?$ index.php?page=$1 [L]
RewriteRule ^((?!index\.php)[^/]+)/([^/]+)/([0-9]{5}+)/([0-9]+)/([0-9]+)/?$ index.php?page=$1&keyword=$2&zip=$3&range=$4&offset=$5 [L,B]
RewriteRule ^((?!index\.php)[^/]+)/([^/]+)/([0-9]{5}+)/([0-9]+)/([0-9]+)/([A-Za-z0-9]+)/?$ index.php?page=$1&keyword=$2&zip=$3&range=$4&offset=$5&action=$6 [L,B]

RewriteRule ^auftraege-finden/([0-9]+)/?$ auftraege-finden&offset=$1 [L,B]
RewriteRule ^auftraege-finden/([^/]+)/([0-9]+)/?$ auftraege-finden&keyword=$1&offset=$2 [L,B]
RewriteRule ^auftraege-finden/([0-9]{5}+)/([0-9]+)/([0-9]+)/?$ auftraege-finden&zip=$1&range=$2&offset=$3 [L,B]
RewriteRule ^auftraege-finden/([^/]+)/([0-9]+)/([A-Za-z0-9]+)/?$ auftraege-finden&keyword=$1&offset=$2&action=$3 [L,B]
RewriteRule ^auftraege-finden/([0-9]{5}+)/([0-9]+)/([0-9]+)/([A-Za-z0-9]+)/?$ auftraege-finden&zip=$1&range=$2&offset=$3&action=$4 [L,B]

RewriteRule ^dienstleister-finden/([0-9]+)/?$ dienstleister-finden&offset=$1 [L,B]
RewriteRule ^dienstleister-finden/([^/]+)/([0-9]+)/?$ dienstleister-finden&keyword=$1&offset=$2 [L,B]
RewriteRule ^dienstleister-finden/([0-9]{5}+)/([0-9]+)/([0-9]+)/?$ dienstleister-finden&zip=$1&range=$2&offset=$3 [L,B]
RewriteRule ^dienstleister-finden/([^/]+)/([0-9]+)/([A-Za-z0-9]+)/?$ dienstleister-finden&keyword=$1&offset=$2&action=$3 [L,B]
RewriteRule ^dienstleister-finden/([0-9]{5}+)/([0-9]+)/([0-9]+)/([A-Za-z0-9]+)/?$ dienstleister-finden&zip=$1&range=$2&offset=$3&action=$4 [L,B]

RewriteRule ^auftrag/([^/]+)/([0-9]+)/?$ auftrag&ctitle=${unesc:$1}&cid=$2 [L,B]
RewriteRule ^dienstleister/([^/]+)/([0-9]+)/?$ dienstleister&ptitle=${unesc:$1}&pid=$2 [L,B]

RewriteRule ^neu-registrieren/([^/]+)/?$ neu-registrieren&cconf=$1 [L,B]
RewriteRule ^anmelden/([^/]+)/?$ anmelden&cconf=$1 [L,B]

RewriteRule ^app-erstellen-lassen/([^/]+)/?$ app-erstellen-lassen&action=$1 [L,B]

ErrorDocument 404 /404


# Redirect to https://www
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

RewriteCond %{HTTPS} !on
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}

(...)

0 个答案:

没有答案