Apache .htaccess HTTPS并删除index.php

Apache .htaccess HTTPS并删除index.php,apache,.htaccess,mod-rewrite,url-rewriting,Apache,.htaccess,Mod Rewrite,Url Rewriting,我已经找到了这个问题的几个答案,但略有不同,有趣的是,它对我不起作用 我的目标是将任何url重写为HTTPS并删除index.php 基本上,我希望合并以下两个htaccess文件,但我对htaccess语法有点陌生: RewriteEngine On RewriteBase / # If needed add 'www' RewriteCond %{HTTP_HOST} !^www\. RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301

我已经找到了这个问题的几个答案,但略有不同,有趣的是,它对我不起作用

我的目标是将任何url重写为HTTPS并删除index.php

基本上,我希望合并以下两个htaccess文件,但我对htaccess语法有点陌生:

RewriteEngine On
RewriteBase /

# If needed add 'www'
RewriteCond %{HTTP_HOST} !^www\.
RewriteRule ^(.*)$ https://www.%{HTTP_HOST}/$1 [R=301,L]

RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [R=301,L]

试试这个:

RewriteEngine On

RewriteBase /
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}/$1 [R,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php?/$0 [PT,L]

很有魅力,thnx!
RewriteEngine On

RewriteBase /
RewriteCond %{HTTPS} off
RewriteRule (.*) https://%{HTTP_HOST}/$1 [R,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule .* index.php?/$0 [PT,L]