サポート » 使い方全般 » 301リダイレクト

  • 解決済 napia37

    (@napia37)


    お世話になります。ブログじゃないサイトを自作テーマで作り、あとからブログを入れました。
    現在のパーマリンクは
    カスタム構造にチェックが入っていてhttp://www.example.com/%postname%/となっていて、
    ブログ投稿するとブログトップはhttp://www.example.com/blogsですが
    個別記事のURLはhttp://www.example.com/投稿名/になってしまいます。
    これを個別記事のURLをhttp://www.example.com/blogs/投稿名/とし、
    blogsを入れていなかった時のアドレスを301リダイレクトさせたいのです。

    適切なパーマリンクの記入法と
    301リダイレクトについて.htaccessの書き方を教えてください。

    私のサイト環境では現在、.htaccessが2つ存在していて(さくらサーバーです)
    /home/ユーザー名/wwwにひとつ、
    /home/ユーザー名/www/wpにもひとつあります。
    wpディレクトリにwp-contentなど、wordpressが入っています。
    これはWordPress アドレス (URL)がhttp://wwwexample.com/wpなので
    サイトアドレス (URL)http://wwwexample.comとしたときに必要な処理で2つになってしまいました。
    この場合、.htaccessに書き込むときはどちらに書き込んだらいいのでしょうか?

5件の返信を表示中 - 1 - 5件目 (全5件中)
  • 状況が把握しかねているのですが、インターネットルールではアクセスされた時に .htaccess が最初に参照される仕組みですよね。
    どちらのディレクトリにアクセスさせるかで違ってきませんか。

    スレッド開始 napia37

    (@napia37)

    digit@maetel様、コメントありがとうございます。

    以前まだブログを付けてなかった時に
    一般設定のWordPress アドレス (URL)と サイトアドレス (URL)がちがうとプレビュー画面が表示されず、
    その対策として.htaccessをコピーしました(確か)。
    2つあっても正常に動いていましたので、そのままにしてあるというわけです。
    index.phpもwpディレクトリ内とwpディレクトリと同列と2つあり、wpディレクトリと同列にrequire('./wp/wp-blog-header.php');と書き込むことで
    URLがhttp://wwwexample.comと表示できるようになったと記憶しています(末尾に『/wp』が表示されない)。
     
    FTPで確認したところ、
    上の階層(wpの中ではない)ほうの.htaccessが日付が更新されているのでこちらが生きてる.htaccessなのでしょうか?

    index.php と .htaccess は一対関係ですよね。
    .htaccess の内容を比較しておくのは大切なことです。

    通常はドメインでアクセスされるのでwpディレクトリはアクセスされることはないわけです。
    パーマリンクを更新した時に、上位階層にすでにあったので書き換えられたということです。

    このスレを後に参照され方への補足
    ディレクトリ指定を index.php に記述するのは
    require( dirname( __FILE__ ) . '/wp/wp-blog-header.php' );
    が正しいですね。

    スレッド開始 napia37

    (@napia37)

    digit@maetel様、ご指摘ありがとうございました。

    上の階層のindex.php、ご指摘通り書き直しました。
    書き込み先はwpディレクトリと同列にある.htaccessだということがわかりました。

    あとは301リダイレクトの書き方です。

    blog/を取る書き方はネット上にあるのですが、ドメインと投稿名の間にblog/を入れる方法がわかりません。

    よろしくお願いいたします。

    スレッド開始 napia37

    (@napia37)

    解決できました。

    .htaccessファイルを作成してくれるサイトを見つけました。
    http://www.itjpn.co.jp/mkhtacc/こちらのページのリダイレクト設定記入欄に
    『移動前ファイルパス』と『転送先URL』を記入後、生成ボタンをクリックすると
    .htaccessに記述するための文字が作成されます。
    そしてファイルの作成ボタンでファイルまで作ってくれますが
    私はもうすでにある.htaccessの一番下に生成されたものを貼りつけたところ
    リダイレクトに成功いたしました。

    ありがとうございました。

5件の返信を表示中 - 1 - 5件目 (全5件中)
  • トピック「301リダイレクト」には新たに返信することはできません。