XAMPPを使おう!

らら
らら

はじめに

XAMPPとは、筆者はWindows環境で、Apache + MariaDB + PHP + Perlの開発環境を作成するときに使用しています。

Windowsでは、IISサーバーがあるのですが、バージョンなどで設定が手間だったり、するのでこちらを使用します。

特に、WordpressなどのCMSでウェブルートに直接インストールをしなければいけない場合に役に立ちます。

サーバーにインストールするまでもなく。ちょっとインストールで試してみるなどにも有効ですよぉ。。

XAMPPをインストール

下記のURLへアクセスします。

https://www.apachefriends.org/jp/index.html

下記の箇所をクリックすると最新のPHPでダウンロードできます。

XAMPP001

PHPの場合、バージョンによって動作するしないがあるので、ダウンロードをクリックして、下記のようにバージョンが選択できます。

XAMPP002

上記でもバージョンがない場合、その他のダウンロードをクリックすると

Soucefogeへ移り、今回は、XAMPP windowsを選択すると各種バージョンがあるので落とします。

知識のある方は、個別にPHPのみ差し替えてもよいかと・・

XAMPP003

ダウンロードしたファイルを実行すると、下記のように、ウィルスソフトがあると、インストールの動作が遅くなるよって出てくるので、

そのまま、ウィルスソフトを起動してたまま、Yesをクリックします。ウィルスソフトは落とさない方がいいですよ。

XAMPP004

次に、再度下記の警告画面が表示されます。これはWindowsのうUACの権限で、C:\Program Files(x86)にインストールするのをやめてくださいという感じと

もしくは、インストール後UACを無効にしてください。と表示されるので、ここはとりあえず、OKします。

これは、XAMPP自体、インストールされたフォルダー内に書き込みなど行ってしまうので、Program Filesにインストールしないようにします。

XAMPP005

そのまま、nextをクリック

XAMPP006

すべて使用するかと思いますので、フルでインストールします。メール送信などの後々必要になります・・

XAMPP007

ここで以前の警告で、Program Filesにインストールしないようにしてねって出てたので、Program Filesには変更せず、そのままnextします。

ここで、Cドライブか、Dドライブか決めておくとよいでしょ。。

XAMPP008

ここで日本語はないので英語のまま、nextします。

XAMPP009

Learn more about Bitnami for XAMPPにチェックを外します・・英語が堪能かたは。そのままどうぞ。。nextします

XAMPP010

インストールをはじめますってでるので、nextします。

XAMPP011

待ちましょう。。。

XAMPP012

そのままFinshします。

XAMPP013

XAMPPのコンパネが起動するので、初めは、apache mysqlだけスタートしてみる。

エラーが出る場合は、XAMPPのコンパネを管理者権限で動作させましょう。

XAMPP014

ブラウザーでlocalhostまたは、あなたのローカルIPを入力して下記の画面がでれば成功です。

XAMPP015

動作しない場合は

コントロールパネル→システムとセキュリティ→Windows Defender ファイアウォール→Windows Defender ファイアウォールを確認

もしくは、ウィルスソフトのファイアウォールを確認してください。

c:\xamppにインストールした場合、

c:\xampp\htdocsにウェブ用コンテンツを置きます。

もしは、htdocsを別名でコピーしてバックアップをとっておき、htdocs内はすべて削除してもよいです。

今後、htdocsをインストールごとに、ディレクトリ毎をコピーしてとっておき、そのものを使用するかで、htdocsへリネームすると便利かと思います。

phpとperlが動作しているか確認します。

check.cgiで保存します。


#!/usr/bin/perl
$bgcolor		= 'BGCOLOR="#008040"';
	foreach $key (sort keys %in) {
		my $space = " " x (20 - length($key));
		$form_str .= "<TR><TD $bgcolor>$env$space:<TD $bgcolor><FONT COLOR=FFFF22 FACE=Arial SIZE=2>$ENV{$env}</TR>\n";
	}
	foreach $env (sort keys %ENV) {
		my $space = " " x (20 - length($env));
		$env_str .= "<TR><TD $bgcolor>$env$space:<TD $bgcolor><FONT COLOR=FFFF22 FACE=Arial SIZE=2>$ENV{$env}</TR>\n";
	}
	print "Content-type: text/html\n\n";
print <<__BASEHTML__;
<html><head><title>環境変数</title></head>
<body bgcolor="00000" "text=ffffff">
<center><font size=3><table border=0 bgcolor="045b51">
<th bgcolor=045b51><font size=4 color=ffffff>環境変数</font></th>
</table><p>
<table border=0>
<tr><th bgcolor="#045b51">取得項目<th bgcolor="#045b51">情 報</tr>
$form_str
$env_str
</table>
</body>
</html>
__BASEHTML__

check.phpで保存します。


<?php 
echo phpinfo();
?>

下記でアクセスして動作すれば問題ありません。

以前はperlは設定しないと動作しませんでしたが、現在のバージョンは動作していました。


http://localhost/check.cgi
http://localhost/check.php

XAMPP016

パッケージソフトによってphp.iniを変更する場合は

c:\xampp\phpにphp.iniがあります。

その他の設定ファイルはconfigボタンで編集できます。

mysqlのadminボタンを押すことでphpmyadminが起動します。データベース作成などはこちらから行います。

XAMPP017

phpmyadminの内容

インストール直後は、ユーザーroot、パスワードはなしになっています。

パッケージによってはデータベースパスワードが空白が入力できなかったりするので

また、どこからのサイトから持ってきた場合、そのサーバーのユーザーID、パスワードを登録してもよいかと

phpmyadminは、サーバセンターでも標準にコンパネについてくるようになったので、覚えておくとよいでしょぉ。。

新規にアカウント追加

XAMPP019

下記を設定します。


GRANT ALL PRIVILEGES ON *.* TO 作成するユーザーID@localhost IDENTIFIED BY '作成するパスワード' WITH GRANT OPTION;
FLUSH PRIVILEGES;

XAMPP020

データベースを作成するには、下記から

データベース名と文字コードを選択して実行すればOKです。

その後、作成したデータベースのアカウント、パスワード、データベース名を、パッケージソフトインストール時に入力してインストールすれば、インストールできます。

XAMPP021

メールを送信できるようにする

通常のサーバーと異なり、smtp経由でメール送信する必要があります。

なので経由する、SMTPサーバー名、SMTPサーバーポート番号、SMTPサーバーユーザーID、SMTPサーバーパスワード、メールの送信者のメールアドレスが必要です。

あなたの個人のメールを使用する場合、outlookの設定を参考にするとよいでしょ。ちなみにパスワードもあなたのものになりますけど・・

outlookはコントロールパネルのmailから確認すると分かりやすいです。

自分のメアドはどうしてもという方は、会社のメール管理しているひとにテスト用のアカウントを作成してもらうとか・・・できれば・・・


C:\xampp\sendmail\sendmail.ini

上記ファイルの下記を変更します。


smtp_server:SMTPサーバー名
smtp_port:SMTPサーバーポート番号 25とか587とか・・・
smtp_ssl:SMTPサーバーの暗号化プロトコル autoか、古いのはnoneで
auth_username:SMTPサーバーユーザーID
auth_password:SMTPサーバーパスワード
force_sender:メールの送信者のメールアドレス これはあなたのメールにしましょう。

perlの場合


open(MAIL,"|C:\\xampp\\sendmail\\sendmail.exe -t あなたのメール@の前には\つけましょう!");

MTの場合 sendmail.exe経由、sendmail.ini要設定

mt-config.cgi


MailTransfer smtp
SMTPServer localhost
SMTPPort 25

MTの場合 直接

mt-config.cgi


#MailTransfer sendmail
#SendMailPath /usr/lib/sendmail
MailTransfer smtp
SMTPServer SMTPサーバー名
SMTPPort SMTPサーバーポート番号
SMTPAuth starttls
SMTPUser SMTPサーバーユーザーID
SMTPPassword SMTPサーバーパスワード

phpの場合 こんな感じ・・パスは自分のインストールしたパスで・・


sendmail_path = "\"C:\xampp\sendmail\sendmail.exe\" -t"

仮のドメインで動作したい。

windowsのhostsを追加しましょう!

C:\Windows\System32\drivers\etc のhostsに下記を追加

社内のローカルであれば、別の人も同様に設定することで共有できます。

ただ、インターネット上の実際のサイトは閲覧できなくなるのでご注意ください。


あなたのIP 仮のドメイン

スマートフォンで確認ができない・・

スマートフォンで確認ができないとお嘆きの方・・以前紹介したか下記を確認してください。。

スマートフォンで、hostsの設定を行いたい https://www.omakase.net/blog/2021/10/smartphone-hosts.html

さいごに

自分の作業環境にも使えますが、Movabletypeなど静的を生成するものの編集サーバーにも応用できるかと・・・FTPで転送など工夫は必要かと・・・

では・・・・

関連記事