htaccessでこの問題が発生しました。CodeIgniter を使用し、リンクから「index.php」を削除しました:
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond $1 !^(robots\.txt|sitemap\.xml)
RewriteRule ^(.*)$ /index.php/$1 [L]
これはうまくいきます。
しかし今、私は次のような古いリンクを含む古い Web を持っています。
http://www.example.com/index.php/about_us/article/70,about-us
それらは Google によってインデックスされます。それらを新しいリンク構造にリダイレクトしたいと思います。
htaccess を変更する必要があるため、上記のリンクは次のようなリンクにリダイレクトされます。
http://www.example.com/en/about_us/70,about-us
「index.php」は削除され、問題ありません。「記事」は常にリンクに表示されるわけではなく、一部のリンクにのみ表示されますが、常にセグメントです。そして、すべての前に 'en' (言語) を追加する必要があります。
これどうやってするの?