質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.37%
PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

XAMPP

XAMPP(ザンプ)は、ウェブアプリケーションの実行に必要なフリーソフトウェアをパッケージングしたApacheディストリビューションです。 XAMPPひとつインストールするだけで、Apache、MySQL、PHP、Perlなどのソフトウェアと、 phpMyAdminなどの管理ツール、SQLiteなどのソフトウェアやライブラリモジュールなどを利用することが可能です。

Q&A

解決済

2回答

4300閲覧

xamppを複数同時起動する方法

momolength

総合スコア62

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

XAMPP

XAMPP(ザンプ)は、ウェブアプリケーションの実行に必要なフリーソフトウェアをパッケージングしたApacheディストリビューションです。 XAMPPひとつインストールするだけで、Apache、MySQL、PHP、Perlなどのソフトウェアと、 phpMyAdminなどの管理ツール、SQLiteなどのソフトウェアやライブラリモジュールなどを利用することが可能です。

1グッド

0クリップ

投稿2021/08/25 06:02

編集2021/08/25 08:51

phpを別バージョンで同時に起動したく、xamppを同時に起動する方法を調べました。

リンク内容

こちらのmy.iniを変更するところまでやって、試しにcontrolpanelからmysqlを起動してみたんですが、起動できず、既に起動してあるxamppのmysqlが起動してしまいます。
apacheも既に起動してあるxamppで使用しているからとエラーが出ます。
portも値を変更したのになぜでしょうか?

apache Problem detected! Port 80 in use by ""C:\xampp\apache\bin\httpd.exe" -k runservice" with PID 22280! Apache WILL NOT start without the configured ports free! You need to uninstall/disable/reconfigure the blocking application or reconfigure Apache and the Control Panel to listen on a different port Problem detected! Port 443 in use by ""C:\xampp\apache\bin\httpd.exe" -k runservice" with PID 22280! Apache WILL NOT start without the configured ports free! You need to uninstall/disable/reconfigure the blocking application or reconfigure Apache and the Control Panel to listen on a different port Attempting to start Apache service... mysql Problem detected! Port 3306 in use by "C:\xampp\mysql\bin\mysqld.exe --defaults-file=C:\xampp\mysql\bin\my.ini mysql"! MySQL WILL NOT start without the configured ports free! You need to uninstall/disable/reconfigure the blocking application or reconfigure MySQL and the Control Panel to listen on a different port Attempting to start MySQL service...

追記
fkmさん指摘
フォルダ構成書いてなかったので、やったこととあわせてもう少し詳しく書きます。

c:xampp
c:xampp_new
この中にそれぞれxamppの中身をインストールしています。
リンク先の設定をし(ポート番号変更)ましたが、xampp_newのapache & mysqlを起動しようとすると、上記のエラーがでます。実際に元々あるxamppは立ち上げておらず、ポートも使われていないはずなんですが。
なぜでしょう。

X_ayami_X👍を押しています

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

FKM

2021/08/25 08:44 編集

複数のポートを用いる必要があるのは Apacheの使用ポート 80となにか sslの使用ポート 443となにか それから mysqlの使用ポート3306となにか ですが、 それぞれフォルダをわけてシステムを起動してますか? 決して一台のxamppに2つサーバを立ち上げるものではないですよ。
momolength

2021/08/25 08:47 編集

xamppとxampp_newでわけて、その中に中身を入れています。 リンク先のconf達を変更しました(80、443、3306から数値を変えた)が、80は使っているから使えないと警告が出てしまいます。 どちらもc直下に入れています。
FKM

2021/08/25 08:50

httpd.confは二箇所に変える場所あるんですが、変えてますか?
guest

回答2

0

どんな設定してどんなコード書いてどんな操作してこうなったのか全く不明ですが、エラーの通りポートが被ったままなので正しくポート変更、反映できてないんでしょう。

ちなみにこちらでは幾つでも立てられているし混線もしてません。
そもそも複数同時起動すること自体、あまりやることではないですけどね。
設定見直してください。
正しく設定し、再起動も行えば提示のような事態にはなりません。
(現状の質問内容では他者にはこれ以上こたえられません)

投稿2021/08/25 06:06

編集2021/08/25 07:38
m.ts10806

総合スコア80875

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

m.ts10806

2021/08/25 07:34

指摘しても一切直さないのわかってるので質問の粒度にあわせて回答したんですけど、低評価理由は何でしょうね。
guest

0

ベストアンサー

念の為、コマンドプロンプトで

netstat -nao

あたりで80番ポートを占領しているpidを見つけ、それが何かをタスクマネージャで確かめてみればいいかと思います。

それから80番ポートはSkypeなど他のシステムが占有することが多いので、xampp絡みは全部
8080~8089あたりのポートに変えた方がいいかもしれません。ちなみに今自分はちょうどxamppを3つ立ち上げているところですが、普通に動いています。

##変更した箇所(8080、444、3307が今回の対象です)

httpd.conf

conf

1Listen localhost:8080 23ServerName localhost:8080

httpds-ssl.conf(ほかも変えた方が無難かも?)

conf

1Listen 444

config.inc.php

php

1$cfg['Servers'][$i]['host'] = '127.0.0.1:3307';

my.ini

ini

1[client] 2port = 3307 3[mysqld] 4port = 3307

投稿2021/08/25 08:56

編集2021/08/26 00:52
FKM

総合スコア3647

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

momolength

2021/08/25 08:59

ありがとうございます。見てみます。 >ちょうどxamppを3つ立ち上げているところですが、普通に動いています。 手順としては、C直下に任意の名前のフォルダ作成しその中にxamppの中身を入れ、ポート番号変更する。で合っていますか? 複数の環境を同時に立ち上げるのは初めてで。すいません。
m.ts10806

2021/08/25 09:00

場合によりtaskkillで確実にリセットしたほうが良いかもしれませんね。慎重にしないと必要なものをkillしてしまうので気をつけないといけませんが。
momolength

2021/08/25 09:04

>80番ポートを占領しているpidを見つけ みつけ、タスクマネージャーで停止し再度二つを立ち上げようとしましたが、xamppのほう(80、443、3306)が立ち上がってしまいます。おかしいですね。
FKM

2021/08/25 09:05

それで合っています。使っている80番が何かに干渉している(Skypeとかリモート操作系が勝手に占拠することが多い)ので、XAMPP自体を全部80xxにするのが自分のおすすめの方法です。 コントロールパネルのConfigから直接httpd.conf、httpd-ssl.confとdbのmy.iniは触れるので、そっちから修正した方が確実ですね(エディタだとどれを開いたのかが混乱するので)
FKM

2021/08/25 09:07

httpd.confは2箇所変える場所がありますが、それも大丈夫ですか? Lisntenの部分とSeverNameの部分です
momolength

2021/08/25 09:09

ありがとうございます。 >コントロールパネルのConfigから >httpd.confは2箇所変える場所が はい。どちらも修正しています。 そうですね、xamppの方の80、443、3306も変えてみます。
momolength

2021/08/25 09:16

連投すいません。 直してる最中なんですが、xamppの方はphpが5系でxampp_newの方は7系なんですね。5系では、httpd.confにSeverNameの記述がありませんでした。 ここが原因かもしれないので、調べてみます。
momolength

2021/08/25 09:38 編集

やはりだめでしたので、新しくinstllerを使い入れなおしました。 Apache Service detected with wrong path Change XAMPP Apache and Control Panel settings or Uninstall/disable the other service manually first Found Path: "C:\xampp\apache\bin\httpd.exe" -k runservice Expected Path: "c:\xampp_new\apache\bin\httpd.exe" -k runservice MySQL Service detected with wrong path Change XAMPP MySQL and Control Panel settings or Uninstall/disable the other service manually first Found Path: C:\xampp\mysql\bin\mysqld.exe --defaults-file=C:\xampp\mysql\bin\my.ini mysql Expected Path: c:\xampp_new\mysql\bin\mysqld.exe --defaults-file=c:\xampp_new\mysql\bin\my.ini するとこのようなエラーが出てしまいました。 フォルダ名はxamppじゃないとダメなんでしょうか...。何がfkmさんと違うんでしょう。
FKM

2021/08/25 09:45

xampp_newでフォルダを切った場合、パスアドレスも随時それに合わせていく必要がありますよ。 リンク先はどういったフォルダ名にしてるのか気になるところですが。 けっこう面倒なので、一番手っ取り早いのはドライブを変えてxamppを配置する方法です。 (自分のテストしたものは一応Cドライブで1つ、Dドライブで2つ立ち上がってます)
momolength

2021/08/26 00:22

>パスアドレスも随時それに合わせていく必要がありますよ。 httpd.cnfとかパスが/xampp/となっている部分を変えていくということですかね。 xxamppのinstallerでインストールした場合、自動的に変更されているように見受けられました。instrallerではなく、ポータブルを解凍>中身をコピー>パスを手動で変えていく。というやり方の方がいいですか?
FKM

2021/08/26 00:45

今、検証してみましたが確かに自動変更されますね。そして、4つめの同時起動テストなども成功しました。
momolength

2021/08/26 01:05

2日に続きご丁寧にありがとうございます。 回答修正をみて、やってみます。
momolength

2021/08/26 02:05

やはりだめですね。 5系xamppと7系xampp_newフォルダがあり、newの方のcontrolからapacheとmysqlを起動すると、xamppの方のapacheとmysqlが起動します。 instrollerをつかったのでパスは問題ないと思うんですが。 もう少し調べてみます。
momolength

2021/08/26 02:54

80、443、3306が起動されるので、ファイルの変更が反映されていないでしょうか。普通に開いて保存するだけでは足りない?
FKM

2021/08/26 03:06

インストールしてポートを独自設定したxampp-control.exeから起動してます?
momolength

2021/08/26 03:12

はい。 5系はそのままc直にインストールして、7系はc直にxampp_newフォルダを作りその中に入れてます。 変更し、それぞれのフォルダからcontrol.exeを起動しています。かつ、controle.exeを開いた時のService and Port Settings の値も変えています。
momolength

2021/08/26 03:29

二つのxamppをゼロから入れなおしました。 そして、XAMPP Control Panelを起動した時にApacheのService列にチェックマークがあったんですが、それを一回×に戻して、再度チェックマークをつけ入れなおし、cnf達を設定したらうまくいきました。 何度かxamppを削除してましたが、その際前回のapacheとmysqlの何かが残っていたようです。 二つのxamppを同時起動することに成功しました。とてもスッキリしました。ありがとうございました。
FKM

2021/08/26 04:12

管理者権限で自動に立ち上げてる場合ですね。その表示は。その場合は再起動ができなくなるので、一度それを外す必要があります。 あと、裏技としてどうしてもhttpd.confあたりの設定がうまくいかない場合。 コマンドプロンプトで apache > bin と入って bin>httpd -k stop bin>httpd -k uninstall bin>httpd -k install bin>httpd -k start とやってサーバを入れ直すことが多いです。
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.37%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問