概要
仕事のために試したことをまとめたものです。
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に以下を追記
3. http://localhost/でアクセス可能に:ServerName localhost:80
4. PHPのディレクトリを指定:PHPIniDir "c:/php"
6. .phpファイルをPHPとして実行可能に:AddType application/x-httpd-php .php
5. apache2.4用PHP5モジュールをロード:LoadModule php5_module "c:/php/php5apache2_4.dll"
5. URL書き換えのためにmod_rewriteをロード:LoadModule rewrite_module modules/mod_rewrite.so
4. .htaccessでの設定を可能に:<Directory />配下にAllowOverride All
- htdocsに.htaccessを作成し以下を記述
6. URLの書き換えを有効にする:RewriteEngine on
7. 書き換え後のパスのベースURLを指定:RewriteBase /
8. 書き換えの条件を指定
9. ファイルではない時:RewriteCond %{REQUEST_FILENAME} !-f
1. ディレクトリではない時:RewriteCond %{REQUEST_FILENAME} !-d
2. 書き換えのルールを指定(条件に一致する全てのパスをクエリをマージしてindex.phpにforward):RewriteRule ^ index.php [QSA,L]
- コマンドプロンプトを管理者として実行
- 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を作成