concrete5 では、各ページのアドレスに
http://【c5のアドレス】/index.php/○○
といったように「index.php」が含まれてしまいます。
しかし、管理画面で設定、そして、「.htaccess」というテキスト設定ファイルを作成し、サーバーにアップロードすることにより、「index.php」を省略する事が可能になります。
ここでは、その方法をご紹介します。
*レンタルサーバーによっては、ユーザーが設定出来る.htaccessの設定が限定されている可能性があり、この機能を使用出来ないレンタルサーバー会社様を確認しております。現在、対処方法を考えて下さる方を募っています。
http://【c5のアドレス】/index.php/login
から、「admin」ユーザーとしてログインして下さい。
ウインドウズでは「アクセサリー」- 「メモ帳」。マックでは、「テキスト編集」などのソフトを使って、画面に現れるコードを使い、新規作成したテキストファイルに貼付けます。
普段、テキストファイルの拡張子は、「.txt」で終わると思いますが、このテキストファイルは、「.txt」などの拡張子を使わずに、「.htaccess」というファイル名で保存してもらいます。最後に、「.txt」の拡張子がついているとうまく行きません。
Windowsの初期設定では、「拡張子を隠す」という機能がついていますので、「.txt」という拡張子をつけたつもりでなくても、隠れている可能性がありますので、きちんと確認下さい。
また、「htaccess.txt」などの名前で保存し、サーバーにアップロードしてからFTPソフトを使い、「.htaccess」への名前変更をされるのも構いません。
マックでは、「.htaccess」というテキストファイルを作成されると、OSの設定で、ファインダーから隠れてしまいます。
ですので、先ず、「htaccess.txt」などの名前で保存し、サーバーにアップロードしてからFTPソフトを使い、「.htaccess」への名前変更をお願い致します。
「.htaccess」というファイル名は、サーバーOSでは、「隠れファイル」と認識されてサーバー上にきちんと保存されたかどうか分からない場合があります。
FTPソフトの設定項目に「隠れファイルを表示する」などの設定が出来る項目があると思いますので、きちんと「隠れファイルを表示する」という設定をされないと行けない場合があります。
これで作業終了です。
ページに戻って、アドレスの「index.php」が消えているかどうかの確認をされて下さい。
プリティーURLを有効にされた場合、concrete5 の実際にあるフォルダーと全く同じ名前
/blocks
/concrete
/concrete/以下のフォルダー
/config
/controllers
…
をページ別名(Alias)にしないように気を付けて下さい。もしされた場合、空白ページなどが表示されてしまいます。
とある大手のレンタルサーバー会社様でこのエラーの発生を確認しております。
.htaccess のテキストファイルに
Options SymLinksIfOwnerMatch
とテキストファイルの一番上に追加すると回避出来るサーバーもございます。(全てがうまく行くとは限りません)ユーザー様からのご報告です。ありがとうございました。
上記の方法でダメであれば、さくらインターネットのインストール方法に記載してある、「index.phpを修正」を試してみて下さい。
また、全てのページにおいて、エラーが発生し、ページが表示されなくなった場合は、お使いのレンタルサーバー会社が、その設定方法を、セキュリティーの観点から許可していない場合があります。
ですので、残念ながら、現在の時点では、 お使いのレンタルサーバー様では、 concrete5 のプリティーURL機能を使用出来ません。
現在、私どもの方で、対処方法を模索中です。また、解決策等の提案がありましたら、ぜひとも Usagi Project のほうまでお知らせ下さい。
この場合は、「.htaccess」のテキストファイルが正常に設定されていない可能性があります。
ファイル名がきちんと「.htaccess」という名前になっているかの再確認をお願いします。
Tweet