サポート » 使い方全般 » ファーストサーバで、パーマリンク設定で”category”を表示させないようにし

  • Googleで検索し、下記サイトを参考にさせて頂いたのですが、解決できませんでした。
    質問させて下さい。

    ■現象
    パーマリンク設定を
    http://ドメイン/%category%/%post_id%.html
    のように変更したいのですが、
    http://ドメイン/%category%/
    にアクセスしても403エラーとなってしまう。

    http://ドメイン/category/%category%/
    は表示されますが、このデフォルトで挿入される”category”を表示させないようにしたいです。

    ■環境

    • WordPress 2.8.4
    • ファーストサーバ ギガント2
    • PHP 5.2.8(DSO版にて動作中)
    • Apache_1.3.37

    ■.htaccessの設定内容

    php_flag mbstring.encoding_translation off
    php_value default_charset "UTF-8"
    
    # BEGIN WordPress
    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
    </IfModule>
    
    # END WordPress

    ■階層構造
    /www/
    ├ .htaccess
    ├ index.php
    └ /wordpress/

    .htaccessのRewriteBaseとRewriteRuleの指定が間違っているのでしょうか?
    是非ご示唆ください。
    宜しくお願いいたします。

    以下、参考にさせて頂いただサイトです。

5件の返信を表示中 - 1 - 5件目 (全5件中)
  • 私はプラグイン「Top Level Categories」で対応しています。

    ただし、このプラグイン単体での使用だと不具合(バグ)がありますので、「Top Level Categories Fix」というプラグインを同時に利用します。
    これで不具合を回避できます。

    本家プラグインのサイト観覧前に、Top Level Categories Fix(日本語)をどうぞ。

    wordpressのインストールフォルダと実行場所を変更しているなら

    <IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /wordpress/
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /wordpress/index.php [L]
    </IfModule>

    こうじゃないですか?

    >LVP8さん
    早速のお返事ありがとうございます。

    • Top Level Categories
    • Top Level Categories Fix

    は、実はどちらも試してみましたのですが、うまく動作しませんでした。
    最初の投稿に記載すべきでした。すみません。

    ファーストサーバはmod_rewriteが出来ない設定になっているようで、そこに問題がありそうです。

    >shokun0803さん
    お返事ありがとうございます。

    そうなんです。
    wordpressのインストールフォルダと実行場所、変更しています。

    /www/
    ├ .htaccess
    ├ index.php
    └ /wordpress/

    とし、
    /www/wordpress/
    内にあったindex.phpを
    /www/
    直下に移動させています。

    ご指摘頂いたようにRewriteBase,RewriteRuleを変更してみました。
    以下のような動作でした。

    表示に問題無し

    • index.php

    500 Internal Server Error

    • http://ドメイン/%category%/%post_id%.html
    • http://ドメイン/category/%category%/

    403 Forbidden

    • http://ドメイン/%category%/

    プラグイン、

    • Top Level Categories
    • Top Level Categories Fix

    の使用/停止を切り替えても同じ結果でした。

    500 Internal Server Errorが出る場合はhtaccessの記述を間違えている可能性が高いです。改行や全角の空白などないか、もしくは文字コードの間違いがないか確認してみてください。
    ちなみに、当方もファーストサーバですが、
    RewriteBase /wordpress/
    でも
    RewriteBase /virtual/www/wordpress
    でもリンク先にあるようなindex.phpが表示からなくなることはありませんでした。他のサーバ(チカッパ)では確かにindex.phpはありませんね。
    つまりファーストサーバではmod_rewriteが有効ではないのか?というと、この記述がないとそもそもパーマリンクが働きませんので、そういうわけでもなさそうです。
    さて、どういうことでしょう・・・ファーストサーバの検証が必要ですねぇ。

    なるほど、ファーストサーバでmod_rewriteが有効でない訳ではないのですね。
    htaccessの記述とmod_rewriteについて、もう少し調べてみます。

5件の返信を表示中 - 1 - 5件目 (全5件中)
  • トピック「ファーストサーバで、パーマリンク設定で”category”を表示させないようにし」には新たに返信することはできません。