2011-02-20 12 views
0

私は自分のサイトのURL構造を変更しました。しかし、Googleのインデックスに登録されたURLは、404が見つかりませんでした。今、私はURLからのリダイレクトする方法 - 短いURLにURLを書き換えます

、のための.htaccessの書き換えルールが必要:URLに www.mydomain.com/topic-titles-here-t273.html

www.mydomain.com/サブフォルダ/ topic273.html

(トピックIDをキャッシュしなければならないとトピックのタイトルを削除する必要があります。)

いくつかの時間を、またこのように、

あちこちメートルのURL:URLに www.mydomain.com/topic-titles-here-t273-15.html

www.mydomain.com/sub-folder/topic273-15.html

I約3時間、たくさん検索しましたが、正解を見つけることができませんでした。助けてください。

+0

あなたはどんなサーバーを使っていますか? – mauris

+0

hostmonster webホスティング、phpBB3フォーラムの場合、mod_rewriteが有効になります – user625118

答えて

1

私はあなたがやろうとしているものにはほとんど不明確だが、

RewriteRule ^([a-z|-]+)(\d+\.html)$ /sub-folder/topic$2 [NC,L] 

は、第2のグループを取る(ちょうど273.html)し、それに応じて追加するだろう、最初のグループは だろう前のすべて(トピック - タイトル - ここ - t)

はあなたが必要なものですか?この例で使用される273があれば3 nubersよりも長くすることができた場合に第2のグループはちょうど

(\d{3}-\d+\.html) 

なり編集するに従って、[OK]を - 正規表現は、私はちょうど2つのグループ

更新を証明したかっ整理することができそうであればあなたは正確にちょうどその番号を修正することを知っている+

+0

ハイフンがある場合は、2番目のグループに追加する必要があります。idの数字の正確な数を知っていますか? –

+0

実際には、ページは273.html、5つの投稿、2番目のページ273-5.html、3番目のページ273-10.htmlなどのように始まります。私はリダイレクトされるようにすべてのそれらのインデックスページをリダイレクトする必要があります – user625118

+0

私は変化が見えません!何も起こりません。同じ404が見つかりません。 – user625118

0
RewriteRule ^([a-z0-9|-]+)t(\d+\.html)$ /redirect/topic$2 [NC,R=301,L] 
RewriteRule ^([a-z0-9|-]+)t(\d+-\d+\.html)$ /redirect/topic$2 [NC,R=301,L]