ホームページ >バックエンド開発 >PHPチュートリアル >seo: 301 リダイレクト
たとえば、Web ページに 2 つの URL (www.x.com/you_10_1 と www.x.com/you_10 など) があり、両方ともその Web ページを指しています。
次に、301 を使用して www.x.com/you_10_1 を www.x.com/you_10 にリダイレクトする必要があります。これを実現する方法を教えてください。
誰もいませんか? ? ? ?専門家の皆様からアドバイスをお願いします
誰が答えられるでしょうか
PHP を使用して実装したいですか、それとも Web サーバーを使いますか?
Web サーバーは何ですか?
すべてのサーバーで誰かにチュートリアルを書いてもらうことはできますか?
ごめんなさい。 PHP サーバーが Apache であることを忘れていました
if($_SERVER['SERVER_NAME'].$_SERVER['SCRIPT_NAME']=='www.x.com/you_10_1'){ header("HTTP/1.1 301 Moved Permanently"); header("Location:http://www.x.com/you_10"); exit();}
if($_SERVER['SERVER_NAME'].$_SERVER['SCRIPT_NAME']=='www.x.com/you_10_1'){ header("HTTP/1.1 301 Moved Permanently"); header("Location:http://www.x.com/you_10"); exit();}
Apache で 301 を実装します。永続的なリダイレクトを実装する方法
Apache で 301 永続的なリダイレクトを実装する方法
PHP と Web のどちらを使用しますか? 実現するサーバー?
フレームワークには独自の書き換えがあり、それを直接実行すると競合が発生します。フレームワークの書き換えの前に実行する必要があります。
<IfModule rewrite_module>RewriteEngine onRewriteCond %{REQUEST_FILENAME} !-dRewriteCond %{REQUEST_FILENAME} !-fRewriteRule ^you_10$ http://www.x.com/you_10_1 [R=301,L]</IfModule>
フレームワークには独自の書き換えがあり、直接の競合が存在します。フレームワークの書き換えの前にそれを行う必要があります。
フレームワークには独自の書き換えがあり、直接競合があるため、フレームワークを書き換える前にそれを行う必要があります。
りー
別の質問をしたいのですが、以前の URL はすべて、 www.x.com/yo_1_1_1 のように、区切り文字として _ を使用していました。
しかし、現在は、:www など、/ を区切り文字として含む URL に変更されました。 x.com/yo/1/1/1
次に、/ で区切られたすべての URL を / で区切られた URL に誘導する必要があります