我有一个客户端项目,我需要为某个文件夹强制使用HTTPS,并强制所有其他文件夹使用HTTP。我可以成功地为我想要的文件夹强制执行HTTPS,但随后通过HTTPS返回到网站的其余部分。我想有一个强制请求任何'不'在安全文件夹强制回到HTTP的规则。这是我到目前为止:强制某些URL上的HTTPS并强制所有其他的HTTP
RewriteEngine On
RewriteCond $1 !\.(gif|jpe?g|png)$ [NC]
RewriteCond %{HTTPS} !=on
RewriteRule ^(my) https://%{HTTP_HOST}%{REQUEST_URI} [NC,R=301,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1
'my'是我需要强制使用HTTPS的文件夹的名称。
任何想法?
更新:我也尝试:
RewriteEngine On
RewriteCond $1 !\.(gif|jpe?g|png)$ [NC]
# Force HTTPS for /my
RewriteCond %{HTTPS} !=on
RewriteRule ^(my) https://%{HTTP_HOST}%{REQUEST_URI} [NC,R=301,L]
# Force HTTP for anything which isn't /my
RewriteCond %{HTTPS} =on
RewriteRule !^my http://%{HTTP_HOST}%{REQUEST_URI} [NC,R=301,L]
# Remove index.php from URLs
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /index.php/$1
但不是我正在通过HTTPS迫于/请求他们现在只是解析为http://www.example.com/index.php/my
:?
谢谢,节省了我很多时间! FWIW,在Wordpress中,基本的Wordpress htaccess IfModule已经从URLs中删除了index.php。 – Jason 2016-01-19 20:47:39