2017-07-18 28 views
1

ベストを尽くしても、オンラインで回答が見つからないようです。URLからファイル拡張子を削除する

私は最近、StackCPでホスティングをセットアップしました。私はGoDaddyを通じてドメインを持っています。

リンクから.html拡張子を削除しようとしています。私はsite.com/termsがsite.com/terms.htmlにあなたを連れて行きたいと思っています。私はかなり読んできたし、これまでのところ、私はこれが

RewriteEngine on 

Options +MultiViews 
RewriteEngine on 
RewriteBase/
RewriteCond %{REQUEST_FILENAME} !-d 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^/]+)/?$ /$1.html [NC, L] 

私はindex.htmlにし、任意のヘルプは高く評価されterms.html利用してルートに私の.htaccessファイルでこれを配置した試してみました。

答えて

1

URLの.html拡張子を削除するには、このファイルを.htaccessファイルに保存してください。

RewriteEngine On 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^([^\.]+)$ $1.html [NC,L] 
+0

これでいいですか?それは私の.htaccessのそれだけで、何もしないように見えるからです。 {REQUEST_FILENAME}をファイル名に変更する必要がありますか? –

+0

実際には動作しているようですが、ほとんどの場合、terms.htmlにリダイレクトされると、テーリング/が追加され、リンクが壊れているようです。 –

+1

はい、上記のコードを.htaccessに入れるだけで、URLから.html拡張子が削除されます。 URLの末尾にあるフォームを削除するには、上記のコードの末尾に、 'RewriteRule ^(。*)$/$ 1/[R = 301、L]'を追加します。それが動作することを願っています。 –

関連する問題