2010-12-27 13 views
0

検索エンジン最適化の目的で、アップロードされた画像をより検索エンジンにやさしくしたいと考えています。現在、すべてのアップロードされた画像は、ACCOUNT_IDファイル名に基づいてサブフォルダに格納されているので、最後のパスはこのように見ているimage_idはのMD5です:mod_rewriteはカスタムファイル名の接頭辞を無視できますか?

このような何かに変換され
/media/[range]/[account_id]/[size]/[hash].jpg 

:私は希望

/media/2000/1127/preview/ebb71045453f38676c40deb9864f811d.jpg 

カスタム接頭辞がファイル名にので、それは次のようになります。

/media/.../my-custom-image-description.ebb71045453f38676c40deb9864f811d.jpg 

ことが可能であり、mod_rewriteのルールを使用して、ファイル名から、このカスタム記述を削除するには、yesどのようにこの場合ルールはどのように見えますか?

UPDATE

技術的に私は、このようなURLそれを動作させるために36文字までのファイル名の長さを減算する必要があります。

/media/2000/1127/preview/nice-image-description.ebb71045453f38676c40deb9864f811d.jpg 

はこれに翻訳さになるだろう:

/media/2000/1127/preview/ebb71045453f38676c40deb9864f811d.jpg 
+0

- > Serverfault – derobert

+0

@derobert:私は同意しません。これは管理ではなく、これはプログラミングです。 'mod_rewrite'はTuring-completeではないかもしれませんが、プログラミングの一形式です。 (また、今のところ、 'mod-rewrite 'とタグ付けされた2,764の質問があります) – Piskvor

+0

はPiskvorに同意します; - )... – thedom

答えて

1

あなたの中に入れてください.htaccess

RewriteEngine on 
    RewriteRule .*\.([a-f0-9]+)\.jpg $1.jpg 

正しく動作するはずです。

+0

それは動作しません – Nazariy

+0

私はそれが動作すると確信しています...私は私のサーバーでそれを試しました;-)。たぶんあなたは間違った方向にそれをコピーしました。エラーが発生しますか? // **マッチ**:これはすばらしい説明ですd41d8cd98f00b204e9800998ecf8427e.jpg - > d41d8cd98f00b204e9800998ecf8427e.jpg ... – thedom

+0

私は親の設定が異なるので、メディアフォルダ内に.htaccessを配置している可能性がありますディレクトリ。 – Nazariy

関連する問題