2017-04-02 21 views
0

を、htmlの拡張子を削除する力WWWおよびhttps私はこのページを持つシンプルで純粋なHTMLサイト開発:.htaccessファイル:

index.html 
page1.html 
page2.html 
etc 

をそして私はに.htaccessファイルを設定したいと思います:

-Force https 
-Force www 
-Remove .html extension (/page1.html -> /page1) 
-Redirect index.html ->/
-When someone types /page1.html to be redirected to /page1 (without html) or (if not possible) to 404 error page 

.htaccessの設定方法は?事前に

おかげ

+0

これらの質問は、何百回もないにしても、何百回もここで回答されています。これらの回答のどれも、あなたが始めるのに役立つものはありませんでしたか?私たちに教えてください:_why_これらすべての回答はあなたを得ることができませんでした。なぜ追加の回答が違いをもたらすべきですか? – arkascha

+0

はい、私はここでどのようにhttpsと強制的に見つけることができますwww.But私は "html"拡張子を削除することができませんいくつかの1つはブラウザでpage.htmlを入力します。 –

+0

次に、これらの2つの側面から始めて、それまでの動的構成ファイルを投稿し、残りの問題を解決しようとする理由がうまくいかない理由を説明してください。それにも無限の答えがあります。あなたが少し見ていると仮定すると、あなたの試みにはいくつかの問題があります。しかし、あなたのコードを投稿する前に、私たちはそれを助けることはできません。 – arkascha

答えて

0

を削除しません。

+1

うまく働いた! +1と+1のビール!とても幸せ! –

0
#OK we force https and www 
RewriteEngine On 
RewriteCond %{HTTPS} off [OR] 
RewriteCond %{HTTP_HOST} !^www\.example\.com$ [NC] 
RewriteRule ^(.*)$ https://www.exmple.com/$1 [L,R=301] 

# remove .html from uri 
RewriteRule ^([^\.]+)$ $1.html [NC,L] 

# remove trailing slashes 
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteRule ^(.*)/$ /$1 [L,R=301] 

# redirect index.html ->/
RewriteCond %{REQUEST_URI} \.html$ 
Redirect /index.html/

すべては私がexample.com/page1.htmlを入力するとき以外は動作するようです。ブラウザのキャッシュがこれらのルールをテストする前に

RewriteEngine on 
#force https+www 
RewriteCond %{HTTPS} off [OR] 
RewriteCond %{HTTP_HOST} !^www\. 
RewriteCond %{HTTP_HOST} ^(?:www\.)?(.+)$ 
RewriteRule (.*) https://www.%1/$1 [NE,L,R] 
#Remove .html 
RewriteCond %{THE_REQUEST} /([^.]+)\.html [NC] 
RewriteRule^/%1 [L,R] 
RewriteCond %{REQUEST_FILENAME}.html -f 
RewriteRule ^(.*?)/?$ /$1.html [L] 

クリア:それはあなたが以下のルールを使用することができ、.htmlのを削除するにしてhttps://wwwを強制的にHTML