2011-01-27 2 views
0

メインのJoomlaインストールはサブディレクトリにあります。私は、ライブサイトがそこを完全に逸脱するように、301を使ってwww.mysite.comからwww.mysite.com/subdirにユーザーをリダイレクトしました。Joomlaインストール用の.htaccessをサブフォルダに変更した後、古いリンクを修正するにはどうすればよいですか?

私は実際には、すべてのURLがサブディレクトリ/サブディレクトリ/が先行している(と私はまた、これはSEOのための非常に良いではないと思います)ので、私はこのように私の.htaccessファイルを変更しているという事実のようにしないでください

RewriteEngine On 

RewriteBase/
# Add trailing slash if path does not contain a period or end with a slash 
RewriteCond %{REQUEST_URI} !(\.|/$) 
RewriteRule (.*) http://www.mysite.com/$1/ [R=301,L] 

#Change http://yoursite.com to http://www.mysite.com (Optional) 
RewriteCond %{HTTP_HOST} ^mysite.com$ 
RewriteRule ^/?(.*)$ http://www.mysite.com/$1 [R=301,L] 

#Rewrites http://www.mysite.com/subdir to http://www.mysite.com/ 
RewriteRule ^(.*)$ subdir/$1 [L] 

Joomla!の設定ファイルも編集しました。サイト内のすべてのリンクがwww.main.com/theirqueryを指し、www.main.com/subdir/theirqueryは表示しないようにしてください。

しかし、すべての古いリンク(投稿済みたとえば、他のwebistesに)壊れているように見えます(404):どうすればこの問題を解決できますか? 私は新しいサブディレクトリフリーのアドレスにそれらをリダイレクトする必要があると思います。それは私が掲示したhtaccessで黙ってリダイレクトされます。 しかし、私はこれを行う方法を知らない!

ありがとうございます!

答えて

0

これは、物理が、データベースに格納されていない古いリンクので、可能ではないので、それらをリダイレクトすると、再びデータベースを通過せずには不可能であろう。

0

configuration.phpで$ live_siteパラメータを設定できますか? Joomlaのバックエンドではなく、直接編集する必要があります。

0

これをhtaccessに追加する必要があります。

RewriteRule ^subdir/(.*)$ /$1 [R=301,NC,L] 
関連する問題