5

私はこれらの解決策を見てきましたが、実際にはどれも正しく機能しません。

mod_rewrite は .php を削除しますが、.php ファイルを提供しますか?

Web サイトのアドレスからファイル拡張子を削除するには?

GETパラメータを保持しながら、Apache Mod_rewriteを使用してphp拡張機能を削除する方法は?

そして、彼らは次のことをしないだけです。これは私がする必要があることです:

1) ファイルから .php 拡張子を削除し、/index.php の代わりに /index を表示します

2) GET パラメーター (ファイルの読み込み中にセッション Cookie を読み取ってヘッダーに保存) を保持するため、/index.php?a=1&b=2 の代わりに /index/a1/b2 が表示される可能性があります

3) URL を完全に台無しにしたり、無限ループなどに陥ったりすることなく、サブドメインと https:// で作業します...

上記の3つのポイントを正しくカバーするために、これらのルールをまとめる方法を知っている人はいますか?

これは私が出発点として取り組んでいるものです:

RewriteCond %{THE_REQUEST} (\.php(.*)\sHTTP/1)
RewriteRule ^(.+)\.php$ /$1 [R=301,L,QSA]
4

3 に答える 3

0

次のことを試してください。

RewriteCond %{THE_REQUEST} "^[^ ]* .*?\.php[? ].*$"
RewriteRule .* - [L,R=404]
于 2014-05-27T15:20:51.810 に答える