PROGRAMMING 土日でわかるPHPプログラミング教室

購入者サポート

ファイルダウンロード

※1 画像フォルダ内の写真(photo.png,photo2.png)は、ぱくたその写真素材を利用しています。この写真を継続して利用する場合は、ぱくたそのご利用規約に同意していただく必要があります。同意しない場合は写真のご利用はできませんのでご注意ください。

FAQ

「土日でわかるPHPプログラミング教室」のKindle版の出版予定はありますか?

Kindle版も現在販売中です。


テキストが間違ってる!

こちらから正誤表をダウンロードしてご確認ください。もしこの中の記載に漏れがあれば、こちらのお問合せよりお手数ですがご連絡いただけますと助かります。


MacOSで動かしてみたい!

こちらのページからインストーラーと手順書をダウンロードしてください。


Windows10で動かしてみたい!

こちらからインストーラーをダウンロードしてください。


SNSで話題を共有したい!

SNSで本誌に関する投稿を行う際には、ハッシュタグ「#土日でわかるPHP」を付与していただくと、話題の共有や検索がよりスムーズになります。


vagrant upができない!

下記のケースが考えられますので、状況に応じてご対応をお願いいたします。

ケース1

間違ったvagrant用のFuelPHP開発環境をコピーしている。

エラー内容

c:\\donichi\\fuelphp-1.7.3\\vagrant>vagrant up Bringing machine\’default\’ up with \’virtualbox\’ provider…
==> default: Clearing any previously set network interfaces…
==> default: Preparing network interfaces based on configuration…
default: Adapter 1: nat
==> default: Forwarding ports…

…続きを見る↓

default: 80 => 8000 (adapter 1)
default: 22 => 2222 (adapter 1)
==> default: Booting VM…
==> default: Waiting for machine to boot. This may take a few minutes…
default: SSH address: 127.0.0.1:2222
default: SSH username: vagrant
default: SSH auth method: private key
default: Warning: Connection timeout. Retrying…

対処方法

① お客様のWindowsが64ビットなのか32ビットなのか調べる。
■Windows7の場合
1. デスクトップのWindowsマークをクリック。
2. 「コンピュータ」を右クリック。
3. システム欄のシステムの種類を参照。
■Windows8/windows8.1の場合
1. デスクトップのWindowsマークを右クリック。
2. 「システム」をクリック。
3. システム欄のシステムの種類を参照。

② C:\donichi\fuelphp-1.7.3のvagrantフォルダを削除する。

③ 32ビットの場合は、P51の【32bit版PCの場合】のgit cloneコマンドを実行する。
64ビットの場合は、P51の【64bit版PCの場合】のgit cloneコマンドを実行する。

ケース2

VirtualBoxがお客様のWindowsの環境に適していない。

エラー内容

c:\\donichi\\fuelphp-1.7.3\\vagrant>vagrant up Bringing machine \’default\’ up with \’virtualbox\’ provider…
==> default: Clearing any previously set network interfaces…
==> default: Preparing network interfaces based on configuration…
default: Adapter 1: nat
==> default: Forwarding ports…

…続きを見る↓

default: 80 => 8000 (adapter 1)
default: 22 => 2222 (adapter 1)
==> default: Booting VM…
==> Waiting for machine to boot. This may take a fewminutes…
The guest machine entered an invalid state while waiting for it to boot. Valid states are \’starting,running\’. 
The machine is in the \’poweroff\’ state. Please verify everything is configured properly and try again.

If the provider you\’re using has a GUI that comes with it,
it is often has more helpful error messages than Vagrant can retrieve.
For example, if you\’re using VirtualBox, run \’vagrant up\’ while the VirtualBox GUI is open.

対処方法

① VirtualBoxをアンインストールする。

こちらよりVirtualBoxをダウンロードし、再インストールする。

③ P52の「vagrant upコマンドで、VirtualBoxに開発環境を生成/設定します(時間がかかります。とくに一回目は)。」を実行する。

ケース3

PC名が日本語になっている。

エラー内容

c:\\donichi\\fuelphp-1.7.3\\vagrant>vagrant up Bringing machine \’default\’ up with \’virtualbox\’ provider…
==> default: Importing base box \’bento/centos-6.7\’…
C:/HashiCorp/Vagrant/embedded/gems/gems/childprocess-0.5.5/lib/childprocess/windows/process_builder.rb:43:in `join\’: incompatible character encodings: Windows-3 1J and UTF-8 (Encoding::CompatibilityError)
from C:/HashiCorp/Vagrant/embedded/gems/gems/childprocess-0.5.5/lib/childprocess/windows/process_builder.rb:43:in `create_command_pointer\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/childprocess-0.5.5/lib/childprocess/windows/process_builder.rb:27:in `start\’

…続きを見る↓

from C:/HashiCorp/Vagrant/embedded/gems/gems/childprocess-0.5.5/lib/childprocess/windows/process.rb:68:in `launch_process\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/childprocess-0.5.5/lib/childprocess/abstract_process.rb:82:in `start\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/util/subprocess.rb:104:in `block in execute\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/util/safe_chdir.rb:26:in `block (2 levels) in safe_chdir\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/util/safe_chdir.rb:25:in `chdir\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/util/safe_chdir.rb:25:in `block in safe_chdir\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/util/safe_chdir.rb:24:in `synchronize\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/util/safe_chdir.rb:24:in `safe_chdir\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/util/subprocess.rb:103:in `execute\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/util/subprocess.rb:22:in `execute\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/providers/virtualbox/driver/base.rb:404:in `block in raw\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/util/busy.rb:19:in `busy\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/providers/virtualbox/driver/base.rb:403:in `raw\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/providers/virtualbox/driver/base.rb:342:in `block in execute\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/util/retryable.rb:17:in `retryable\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/providers/virtualbox/driver/base.rb:337:in `execute\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/providers/virtualbox/driver/version_4_3.rb:209:in `import\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/providers/virtualbox/action/import.rb:15:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/warden.rb:34:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/providers/virtualbox/action/customize.rb:40:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/warden.rb:34:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/providers/virtualbox/action/check_accessible.rb:18:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/warden.rb:34:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/warden.rb:95:in `block in finalize_action\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/warden.rb:34:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/warden.rb:34:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/builder.rb:116:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/runner.rb:66:in `block in run\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/util/busy.rb:19:in `busy\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/runner.rb:66:in `run\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/builtin/call.rb:53:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/warden.rb:34:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/builtin/config_validate.rb:25:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/warden.rb:34:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/warden.rb:95:in `block in finalize_action\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/warden.rb:34:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/warden.rb:34:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/builtin/handle_box.rb:56:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/warden.rb:34:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/warden.rb:95:in `block in finalize_action\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/warden.rb:34:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/warden.rb:34:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/builder.rb:116:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/runner.rb:66:in `block in run\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/util/busy.rb:19:in `busy\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/runner.rb:66:in `run\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/builtin/call.rb:53:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/warden.rb:34:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/plugins/providers/virtualbox/action/check_virtualbox.rb:17:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/warden.rb:34:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/builder.rb:116:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/runner.rb:66:in `block in run\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/util/busy.rb:19:in `busy\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/action/runner.rb:66:in `run\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/machine.rb:214:in `action_raw\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/machine.rb:191:in `block in action\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/environment.rb:516:in `lock\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/machine.rb:178:in `call\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/machine.rb:178:in `action\’
from C:/HashiCorp/Vagrant/embedded/gems/gems/vagrant-1.7.2/lib/vagrant/batch_action.rb:82:in `block (2 levels) in run\’

対処方法

・新しく英語のPC名(例:furoide-taro)でアカウントを作成する

■Windows7の場合
1.virtualboxとvagrantをアンインストール。
2.デスクトップのWindowsマークをクリック。
3.「コントロールパネル」をクリック。
4.「ユーザーアカウントと家族のための安全設定」の「ユーザーアカウントの追加または削除」をクリック。
5.「新しいアカウントの作成」をクリック。
6.「新しいアカウント名」欄に新しい英語のPC名を入力。
7.「管理者」を選択し、「アカウントの作成」をクリック。
8.新しく作成されたユーザーをクリック。
9.「パスワードの作成」をクリック。
10.「新しいパスワード」欄と「新しいパスワードの確認」欄と「パスワードのヒントの入力」欄の「パスワードの作成」をクリック。
11.PCを再起動し、新しく作成されたユーザーでログインする。
12.virtualboxとvagrantをインストール。

■Windows8/windows8.1の場合
1.virtualboxとvagrantをアンインストール。
2.デスクトップのWindowsマークを右クリック。
3.「コントロールパネル」をクリック。
4.「ユーザーアカウントとファミリーセーフティ」をクリック。
5.「ユーザーアカウントの削除」をクリック。
6.「PC設定で新しいユーザーを追加」をクリック。
7.「アカウントを追加」をクリック。
8.画面の下部の「Microsoftアカウントを使わずにサインインする(お勧めしません)」をクリック。
9.「ローカルアカウント」をクリック。
10.「ユーザー名」欄に新しい英語のPC名を入力し、
「パスワード」欄と「パスワードの確認入力」欄と「パスワードのヒント」欄を入力し、「次へ」をクリック。
11.「完了」をクリック。
12.PCを再起動し、新しく作成されたユーザーでログインする。
13.virtualboxとvagrantをインストール。

ケース4

8000番ポートが既に使用されている。

エラー内容

c:\\donichi\\fuelphp-1.7.3\\vagrant>vagrant up Bringing machine \’default\’ up with \’virtualbox\’ provider…
==> default: Box \’bento/centos-6.7-i386\’ could not be found. Attempting to find and install…
default: Box Provider: virtualbox
default: Box Version: >= 0
==> default: Adding box \’bento/centos-6.7-i386\’ (v0) for provider: virtualbox
default: Downloading: https://atlas.hashicorp.com/bento/boxes/centos-6.7-i386/versions/2.2.2/providers/virtualbox.box
default: Progress: 100% (Rate: 1229k/s, Estimated time remaining: –:–:–) 

…続きを見る↓

==> default: Successfully added box \’bento/centos-6.7-i386\’ (v0) for \’virtualbox \’!
==> default: Importing base box \’bento/centos-6.7-i386\’…
==> default: Matching MAC address for NAT networking…
==> default: Setting the name of the VM: vagrant_default_1452667725560_11951
Vagrant cannot forward the specified ports on this VM, since they would collide with some other application that is already listening on these ports. The forwarded port to 8000 is already in use on the host machine.

To fix this, modify your current projects Vagrantfile to use another port. Example, where \’1234\’ would be replaced by a unique host port:

config.vm.network :forwarded_port, guest: 80, host: 1234

Sometimes, Vagrant will attempt to auto-correct this for you. In this case, Vagrant was unable to. This is usually because the guest machine is in a state which doesn\’t allow modifying port forwarding.

c:\\donichi\\fuelphp-1.7.3\\vagrant>vagrant up Bringing machine \’default\’ up with \’virtualbox\’ provider…
Vagrant cannot forward the specified ports on this VM, since they would collide with some other application that is already listening on these ports. The forwarded port to 8000 is already in use on the host machine.

To fix this, modify your current projects Vagrantfile to use another port. Example, where \’1234\’ would be replaced by a unique host port:

config.vm.network :forwarded_port, guest: 80, host: 1234

Sometimes, Vagrant will attempt to auto-correct this for you. In this case, Vagrant was unable to. This is usually because the guest machine is in a state which doesn\’t allow modifying port forwarding.

対処方法

・ポートを1234番に変更する。

① c:\donichi\fuelphp-1.7.3\vagrant\Vagrantfileをエディタで開いて、7行目のconfig.vm.network ‘forwarded_port’, guest: 80, host: 8000, host_ip: ‘127.0.0.1’をconfig.vm.network ‘forwarded_port’, guest: 80, host: 1234, host_ip: ‘127.0.0.1’と変更して保存。

② コマンドプロンプトで cd vagrant して、vagrant up を実行。
※この作業をした後、書籍P54以降のアドレスは全て「http://localhost:1234」に読みかえて進めてください。

③ P52の「vagrant upコマンドで、VirtualBoxに開発環境を生成/設定します(時間がかかります。とくに一回目は)。」を実行する。

お問い合わせ

「土日でわかるPHPプログラミング教室」についてのお問い合わせ・ご質問はこちらから
  • 社長ブログ
  • スタッフブログ
  • それいけ!フロイデ電子工作部