Re: 日本語のページ追加で、ページパスが日本語になるとページが表示されません。

2012年5月13日 at 8:31

KDDIホスティング G200 は、ApacheではなくてWindows IISのようですね。
http://www.kddi.com/pub/hosting-g/faq/list.html#faqF14

concrete5はIISは公式にはサポートしていませんし、我々日本語版開発チームもテストしていません。ということを前提で、このスレッドで対策を考えていきましょうか…となるわけですが。

で、URLに関しては、Apacheのmod_rewriteという機能を使っています。
通常のインストールでは.htaccessに下記のようなmod_rewriteのルールが記載されます。MAMPはApacheなので、これで正常に動作します。

# -- concrete5 urls start --
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}/index.html !-f
RewriteCond %{REQUEST_FILENAME}/index.php !-f
RewriteRule . index.php [L]
</IfModule>
# -- concrete5 urls end --


まず、上記ヘルプで「ISAPI_Rewriteのルールを記述する」と記載されています。

ググって出てきたこのページを見ると、先頭に [ISAPI_Rewrite] と書かないといけないらしいです。「Apacheのmod_rewriteと微妙に違う」というのが気になりますが、試してみていただけますか?
http://pentan.info/server/windows/iis/isapi_rewrite.html


あと、本家のHow-toでもWindows IISでプリティURLを動作させる方法が書かれていました。
http://www.concrete5.org/documentation/how-tos/editors/enable-pretty-urls-in-windows-iis/

concrete5の管理画面に表示される、プリティURLを有効にするリライトルールはApache Webサーバーのために書かれたものです。しかし、Windows IISで動作するルールを簡単に得ることができます。MicrosoftがApacheの書式からの変換ユーティリティを用意していて、我々も使うことができます。


ここで言及されている「URL書き換えモジュール」は、G200で使うことができますでしょうか?
http://technet.microsoft.com/ja-jp/iis/ee854973.aspx

Re: 日本語のページ追加で、ページパスが日本語になるとページが表示されません。

2012年5月13日 at 11:54
返信ありがとうございます。
.htaccessに
[ISAPI_Rewrite]
# -- concrete5 urls start --
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME}/index.html !-f
RewriteCond %{REQUEST_FILENAME}/index.php !-f
RewriteRule . index.php [L]
</IfModule>
# -- concrete5 urls end --
を記述してwwwroot直下に設置してみましたが、特に効果はありませんでした。

URL書き換えモジュールは
http://technet.microsoft.com/ja-jp/iis/ee854973.aspx
G200のコントローラーパネル上に設置できそうな箇所がなく、どう設置すれば良いかわかりませんでした。

本家How to変換ユーティリティというのは上記のことなのでしょうか…。
そもそもURL変換モジュールの仕組みと、本来設置されている場所自体が分かってないかもしれないです。
どうぞ宜しくお願い致します。
 

Re: 日本語のページ追加で、ページパスが日本語になるとページが表示されません。

2012年5月13日 at 12:07
私もIISは全く使ったことがないので分からない同士ですw
そもそもプリティURLを有効にしてらっしゃいますか?まずココを確認していただければありがたいです。有効になっていたら、いったん無効に。

URL書き換えモジュールはKDDIホスティングでは対応してないのかもしれないですね。
他の情報を探してみます。
 

Re: 日本語のページ追加で、ページパスが日本語になるとページが表示されません。

2012年5月13日 at 12:24
プリティURLもともと無効だったので、試しに有効にしてみたところ、PHPエラー(おそらく.htaccessの影響)がでて、一部表示できていたページがNotfoundになりました。無効に戻したら一旦元にもどりましたが、よく考えるとconcrete5を再インストールする際、データベースを復元させる際も似たエラーがでておりました。問題なく復元できていたので放置してましたが…。
 

Re: 日本語のページ追加で、ページパスが日本語になるとページが表示されません。

2012年5月14日 at 12:13
WindowsIISのバージョンは6.0でしたので、下記の記事と同じエラーだと考えてます。
http://concrete5-japan.org/community/forums/chat/post-1300/post-1301/post-1328/
 

Re: 日本語のページ追加で、ページパスが日本語になるとページが表示されません。

2012年5月15日 at 23:02
英語版を使ってみるというのはどうでしょうか?

日本語版は今までのバージョンの経緯などを加味して日本語URLを可能にしています。
もし、日本語URLの問題だけで稼動しないなら英語版を使用するというのも一つかもしれません。
KDDIホスティングでの動作はわかりませんが、英語版はページのタイトル(名前)を全角にした場合
URLは数字になりますのでURLに全角が使用されません。
デメリットとしては、日本語言語ファイルを導入しても一部英語になる、検索機能の一部が使えないなどです。