行。希望有人可以帮我提出建议 -
如果它启用SSL,它会影响我的整个域(显然),所以我的主站点最终会: 'https://main-sitename.com'
我的多站点博客也出现了:
https://main-sitename.com/blogname-1
https://main-sitename.com/blogname-2
等等。我的所有菜单链接都是https,它会禁用外部链接,因为所有网址都以https为前缀。 : - /
我想做的是得到这个:
http://main-sitename.com
http://main-sitename.com/blogname-1
http://main-sitename.com/blogname-2
https://main-sitename.com/shop/
(WooCommerce将在结帐时强制使用HTTPS,然后在完成后取消强制执行)。
答案 0 :(得分:0)
听起来已经为整个服务器设置了SSLRequireSSL。因为您只想在/ shop /目录上强制执行HTTPS。在该目录中添加一个.htaccess文件,其中包含:
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
这将强制任何通过http://连接到您商店的人被重定向到相同的URI,但是在https://
编辑2
这对我有用(www.myserver.com更改为我的真实服务器名称)。我在WP中使用日期和名称永久链接。我一转到http://www.myserver.com/shop/,我就被重定向到https。它保留了URI。
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
# Addition to force redirect to https when they visit the shop!
RewriteBase /
RewriteCond %{HTTPS} !on
RewriteRule (shop/.*$) https://www.myserver.com/$1 [R=301,L]
# Back to WordPress changes
RewriteBase /
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /index.php [L]
</IfModule>
# END WordPress