PHP

.htaccessのmod_rewriteを使わずにCakePHPシステムを動作させる方法

記事内に商品プロモーションを含む場合があります

業務でCakePHPの動作させる環境を構築する際、わけあって .htaccess のファイルを使わずに構築する事態に陥りました。通常、CakePHPではApacheのmod_rewriteモジュールを使用させてURLを生成していますが、mod_rewriteを使わずにCakePHPを動作させる方法を紹介します。

以下の話は、2015年1月12日時点での安定版、CakePHP 2.5.8を想定しています。

方法はとても簡単です。

まず、app/Config/core.php をエディタで開きます。
中身の107行目付近に

/**
 * To configure CakePHP *not* to use mod_rewrite and to
 * use CakePHP pretty URLs, remove these .htaccess
 * files:
 *
 * /.htaccess
 * /app/.htaccess
 * /app/webroot/.htaccess
 *
 * And uncomment the App.baseUrl below. But keep in mind
 * that plugin assets such as images, CSS and JavaScript files
 * will not work without URL rewriting!
 * To work around this issue you should either symlink or copy
 * the plugin assets into you app's webroot directory. This is
 * recommended even when you are using mod_rewrite. Handling static
 * assets through the Dispatcher is incredibly inefficient and
 * included primarily as a development convenience - and
 * thus not recommended for production applications.
 */
//Configure::write('App.baseUrl', env('SCRIPT_NAME'));

/**

という箇所があるので、「Configure::write(‘App.baseUrl’, env(‘SCRIPT_NAME’));」の箇所をコメントを取り除きます。

Configure::write('App.baseUrl', env('SCRIPT_NAME'));

その後、CakePHPの各ディレクトリに存在する .htaccess ファイルを削除します。

■削除対象
/.htaccess
/app/.htaccess
/app/webroot/.htaccess

上記の3つの.htaccessを削除してください。
これで、mod_rewriteを使わずにCakePHPのシステムを動作させることができます。お試しあれ。

★参考
CakePHP Configuration
http://book.cakephp.org/2.0/en/development/configuration.html

===

コレカラウェブではWebライティングのお仕事を承っております。豊富な実務経験や国家資格を生かして、SEOに強い完全オリジナルな文章を作成いたします。公式noteにてポートフォリオを掲載していますので、こちらも併せてご覧ください。ご相談・ご依頼はお問い合わせページからお願いいたします!

「いいね!」と思ったら、クリックお願いいたします<m(__)m>
にほんブログ村 小遣いブログ Webライター・ブログライターへ にほんブログ村 IT技術ブログ SEO・SEMへ にほんブログ村 小遣いブログ ブログアフィリエイトへ
ABOUT ME
らぐち
コレカラブログ管理人のらぐちです。コレカラウェブという屋号でフリーランスとして、Webライティング・SEOコンサルティング・メディア運営・障害者支援のお仕事を一貫して承ってきました。このブログではコレカラウェブのお仕事で得たノウハウやテクニックを詳しく紹介しています。

COMMENT

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA