基本的に、この古い URL からすべての URL を移動しようとしています。
新しい URL へ (サイトを新しいシステムに移動すると、すべての外部リンクが機能しないため)
http://www.gamingonlinux.com/articles/crusader-kings-2-will-be-released-for-linux-today.1629
誰かが私がそれをするのを手伝ってくれますか?
基本的に、この古い URL からすべての URL を移動しようとしています。
新しい URL へ (サイトを新しいシステムに移動すると、すべての外部リンクが機能しないため)
http://www.gamingonlinux.com/articles/crusader-kings-2-will-be-released-for-linux-today.1629
誰かが私がそれをするのを手伝ってくれますか?
これを試すことができます:
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_URI} ^/index\.php$ [NC]
RewriteCond %{QUERY_STRING} ^[^/]+/([^/]+)/? [NC]
RewriteRule .* articles/%1? [R=301,L]
永久にリダイレクト
http://www.gamingonlinux.com/index.php?anything/query
末尾のスラッシュの有無にかかわらず
に:
http://www.gamingonlinux.com/articles/query
メインディレクトリの .htaccess で、次の行に沿った何かが機能するはずです。
RewriteEngine on
RewriteRule ^articles/([^/\.]+)$ index.php?threads/$1/ [L]
そうでない場合は、mod_rewrite に関するドキュメントや、Google と Bing の正規表現に関するドキュメントが山ほどあります。
編集:「/articles/」の URL が「index.php?thread」の URL を指すようにしたいというのは私の理解でした。私の理解が正しければ、次のように逆にしたいのです。
RewriteEngine on
RewriteRule ^index.php?threads/([^/\.]+)/$ articles/$1 [L]
EDIT2:URLに疑問符があるため、少し問題がありました。それ以降はすべて、URL ではなく QUERY_STRING の一部になります。次のコードをテストしましたが、動作します。
RewriteEngine on
RewriteCond %{QUERY_STRING} threads/(.*)
RewriteRule ^index\.php$ articles/%1 [L]
それが役立つことを願っています。