2014年09月18日(Thu)
Windows8.1にApacheとPHPをインストールしてローカル環境を構築
先日、新しいパソコンを購入したので、作業環境を整えるべくApacheとPHPのインストールに挑みました。
毎回、パソコンを変えるたびに行う作業なのですが、色々と度忘れしているため毎度苦戦します…
なので、今回苦戦した箇所をメモに残そうと思います。
htaccessを使いたい
毎回躓くところなのですが、htaccessを使いたいので設定したいのですが、どこを変更するのか必ず忘れてしまいます… 変更する箇所は、httpd.confにあるAllowOverrideの項目がNoneになっているのでAllに変更します。 これで、.htaccessが使えるようになりますが.(ドット)が面倒なので更にAccessFileName htaccessを追記。 こうする事でローカル環境だと.(ドット)無しのhtaccessで使えるようになります。 アップロード時に名前を変更して.(ドット)を付け加えればOKです。
httpd.conf
AllowOverride ALL AccessFileName htaccess
Noticeのエラーメッセージを非表示にしたい
今回は、以前の環境より新しいPHPのバージョンをインストールしたのですが、5.4移行はNoticeのエラーが表示されようです。 今まで制作した物を見たら、今までにはなかったエラー表示があり、最初は焦りました。 php.iniにあるerror_reportingをE_ALL & ~E_NOTICEに変更することにより改善されました。
php.ini
error_reporting = E_ALL & ~E_NOTICE
phpのdate関数エラー
参考サイトを見て設定が一通り終わった時に、info.phpを見たときにdateの項目にエラーメッセージが出ていました。 面倒なので見なかった事にしてたのですが、制作物を見たらphpのdate関数でエラーが起こっている事に気づき見過ごせなくなったので、調べて対応しました。 原因は、php.iniのdate.timezoneの項目が未設定だったためと思われます。 なので、Asia/Tokyoを追加してみたところ改善されinfo.phpもdate関数のエラーも無くなりました。
php.ini
date.timezone="Asia/Tokyo"
phpの省略タグを使いたい
制作物の数か所でエラーがあったので調べてみるとphpの省略タグが原因だとわかりました。 以前の環境では、気にしてなかったのですが、これにも設定があるようです。 php.iniのshort_open_tagをOnにすると、改善されました。
php.ini
short_open_tag = On
MySQLのエラーの違い
新しい環境にしたら以前の環境とMySQLのデータベース接続時のエラーメッセージが違う事に気づきました。 以前は、Warningだったのに対して、今回はFatal errorだったので、エラーメッセージ後が表示されませんでした。 以前のphp.iniと今回のphp.iniを見比べextension=php_mysql.dllのセミコロンの有無に気づき外して以前と同じにしたら、エラーメッセージがWarningになりました。 基本的に面倒なのでローカルには、MySQLをインストールせずに作業をしているためFatal errorだと作業が進まず厄介だったので改善されて一安心です。
php.ini
extension=php_mysql.dll
【参考Webサイト】
- Apache2.2をWindows(8.1)にインストールしよう!
- PHPの省略タグについて
- Noticeエラーだけを非表示にしたいとき
- phpinfo();でtimezoneが設定されていないというエラーが
コメント(0件)
Windows8.1にApacheとPHPをインストールしてローカル環境を構築に対するご意見、ご感想、情報提供など皆様からのコメントをお待ちしております。 お気軽にコメントしてください。
コメントフォーム