2011-02-10 17 views
0

私の新しいプロジェクトに複数の "フレンドリーなURL"を付けるには問題があります。.htaccess複数のSEOフレンドリーなURLを扱っています

私は以前に複数のものを扱う必要がなかったので、どこから始めたらよいか分かりません。 私は遊びましたが、何も思い付きませんでした。いずれかの

元のスクリプトに:

RewriteEngine on 
RewriteCond %{REQUEST_URI} \/([0-9a-z]{1,9})$ [NC] 
RewriteRule ^(.*) http://mysite.me/?%1 [L] 

私はその正確なものを維持したいが、そのようなこの方法のためのラインの別のカップルなど、他のファイルを、処理するために、より多くを必要とします。 mysite.me/view/46345

view.php?p=46345は、あなたが助けることができる 感謝を願っています!

+0

誰の助けを行います:) –

+0

私たちはあなたを助けることができる方法を見ていません。実際の質問は何ですか? – Gumbo

+0

申し訳ありませんが私は非常に明確にしなかった場合は、私は質問を投稿したときに遅れていた:P私は複数の ".htaccessフレンドリーなURL"を追加して元の最初のものを維持し、尋ねられた(上記) –

答えて

1

私はApacheではなくコードでこれを行うことをお勧めします。すべてのリクエストを1つのファイル(index.php、またはDirectoryIndexファイルが何であれ)にリダイレクトしてから、コード内のURLを調べて、URLを必要な形式に変換してください。次に、変換されたURLで301を返します。必要に応じて、実際に存在するファイルに対してこのプロセスをスキップできます。これにより、要求された資産のオーバーヘッドが回避されます。ここで

がこれを行うサンプルの.htaccessです:

Options +FollowSymLinks +ExecCGI 
<IfModule mod_rewrite.c> 
RewriteEngine On 

# check if the file exists. if it doesn't redirect to your main file 
# comment out the RewriteCond if you don't want to skip index.php for existing files 
RewriteCond %{REQUEST_FILENAME} !-f 
RewriteRule ^(.*)$ index.php [QSA,L] 
</IfModule> 
関連する問題