概要
仕事のために試したことをまとめたものです。
Apacheがwin64、PHPがwin32だとうまくいかなかったのでMySQLも統一の必要があるかもしれません。
バージョン
- Apache:httpd-2.4.41-win32-VS16.zip
- MySQL:mysql-8.0.19-winx64.zip
- PHP:php-5.4.45-Win32-VC9-x86.zip
インストール
各アプリケーションのインストールから実行までの手順を記載
Apache
- ファイルをダウンロードし展開(C:\Apache24)
- httpd.confに以下を追記
- http://localhost/でアクセス可能に:
ServerName localhost:80
- PHPのディレクトリを指定:
PHPIniDir "c:/php"
- .phpファイルをPHPとして実行可能に:
AddType application/x-httpd-php .php
- apache2.4用PHP5モジュールをロード:
LoadModule php5_module "c:/php/php5apache2_4.dll"
- URL書き換えのためにmod_rewriteをロード:
LoadModule rewrite_module modules/mod_rewrite.so
- .htaccessでの設定を可能に:<Directory />配下に
AllowOverride All
- http://localhost/でアクセス可能に:
- htdocsに.htaccessを作成し以下を記述
- URLの書き換えを有効にする:
RewriteEngine on
- 書き換え後のパスのベースURLを指定:
RewriteBase /
- 書き換えの条件を指定
- ファイルではない時:
RewriteCond %{REQUEST_FILENAME} !-f
- ディレクトリではない時:
RewriteCond %{REQUEST_FILENAME} !-d
- ファイルではない時:
- 書き換えのルールを指定(条件に一致する全てのパスをクエリをマージしてindex.phpにforward):
RewriteRule ^ index.php [QSA,L]
- URLの書き換えを有効にする:
- コマンドプロンプトを管理者として実行
- apacheを起動:
httpd -k start
MySQL
- 上記サイト手順6まで実行
- PATHを通す([展開先]\bin)
- MySQL初期化:
mysqld --initialize-insecure --user=mysql
- .batファイルを作成し次の内容で保存:
mysqld --defaults-file="[展開先]\my.ini" --console
- 接続:
mysql -u root --skip-password
- rootユーザにパスワード設定:
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';
PHP
- ファイルをダウンロードし展開(C:\php)
- php.ini-productionをコピペしphp.iniを作成