Joomler!.net - Decided on Joomla!

デル株式会社

Wiki or Wordpress? No it is JContentPlus.

Home » Blog » RewriteBase
0 votes
Written by:Joomler! 3583 hits Thursday, 10 July 2008 18:15

以前に書きかけてやめた内容です。その変更が間違っているかもしれないからです。Joomla!のHackでなくサーバーの設定やhtaccessでの回避が可能とも思えるのですが、探しても適切な内容には行き当たりませんでした。(そのあたりはあまり詳しくはありません。)事実、CORESERVERでは下記のHackは適用していなかったので環境によるものだと思います。

80codeサーバーでJoomla!1.5のSEFをオンにすると(独自ドメインを使っている環境下のテストしかしていません。)、メニューの一階層目は正しく表示されますが、2階層目以降は本来のURLに付加された疑似フォルダ(変)がトップレベルの階層になってしまい、404エラーとなってしまいます。それにはじめて出くわしたときはいろいろ検索したのですが、なかなか適当な記事を発見できず、安易にHackという方法をとっています。

変更は、以下の通り。

Root/libraries/joomla/environment/uri.php

		return $pathonly === false ? $base['prefix'].$base['path'].'/' : $base['path'];

を以下のように変更することで通常のように表示できています。

		if(JPATH_BASE == JPATH_ADMINISTRATOR) {
			return $pathonly === false ? '/administrator/' : '/administrator';
		}
		return $pathonly === false ? '/' : '';
//		return $pathonly === false ? $base['prefix'].$base['path'].'/' : $base['path'];

 

236行目は、変更前のものをコメントアウトしているだけです。すぐに戻せるように残しています。

また、htaccessの「RewriteBase /」部分を有効にしてください。

うちのデモサイトhttp://demo.joomler.net/ではこの変更を適用しています。今のところ何も問題ありません。ただ、サードパーティーのエクステンションは私の作成したものだけで他のエクステンションでは悪影響があるかもしれないのでご注意ください。

また、他の回避方法(サーバー設定など)をご存じの方は是非教えて下さい。

 
0 votes
Written by:Joomler! 3415 hits Sunday, 27 January 2008 16:12

SEF、mod_rewrite、suffixをオンにするとJoomla!1.5では、1.0.xと異なり

http://demo.joomler.net/the-news/1-latest-news/
49-scribefire-test.html

などとかなりわかりやすいURLにしてくれます。1.0.xではここ80codeサーバーでは問題なく動作しています。ところが、1.5では簡単にはできませんでした。

RewriteBase /

をアンコメントしないと500エラーでこのサーバーでは動きません。それは、1.0.xでも同じです。が、1.5では一番上位の階層なら表示できますが2階層目以降は、404エラーとなってしまいます。対応策をかなり調べたつもりですが適当なドキュメントを見つけられませんでした。 どなたかご存じなら教えてください。

Hack

そこでへこたれず・・・コアを編集してしまいました。・・・5文字追加しただけです。今テスト中ですので大丈夫そうなら書きます。とりあえず表示する分には大丈夫なようです。

今度は日本語SEFをテストしてみるつもりです。

 

JContentPlus for Joomla!1.5 powered by Joomler!.net

デル株式会社
joomler.net is not affiliated with or endorsed by the Joomla! Project or Open Source Matters.
The Joomla!(R) name is used under a limited license from Open Source Matters in the United States and other countries.
joomler.net is not affiliated with or endorsed by Open Source Matters or the Joomla! Project.