RのWeb制作

Webサービス制作のための技術情報を。データ分析(Python、機械学習コンペ他)や自作野球ゲームMeisyoのこと中心。

Web制作

Google Driveを使ってXAMPP+CakePHPのドキュメントルートを共有する in Windows

投稿日:2019年2月4日 更新日:

どこでも同じように作業がしたい。
デスクトップでも、ノートでも。

無論、サーバー(XAMPP)も同じように動かしたいな

・・・ということで、Google Driveを使って環境を構築していきます。
今回はXAMPPとCakePHPの組み合わせですが、ほかにも応用が利きそうですね。

きっかけ

MicroSoft Surface Laptop2を購入しました。

今まではデスクトップのみ(椅子に何時間も座りながら!)でプログラミングをしていたので、もっと楽したいと思いました。
ノートなら寝転びながらでも出来るし、負荷の高い演算はデスクトップで行えたら楽だなあと。

Google Driveのインストール

Google Driveをインストールします。

インストール先は、C直下の「C:\GoogleDrive」にしましょう。

* CakePHPを使う場合は、必ずこの設定を守ってください。
CakePHPではindex.phpにて、ルートディレクトリを設定しています。
もしこの設定をusers(ユーザー)ディレクトリ以下にすると、ユーザー名を統一しなければ、サーバー起動時にindex.phpを一々書き換えないと動きません。

index.php設定例

define('ROOT', DS.'GoogleDrive'.DS.'localhost'.DS.'home'.DS.'cake');

間違い例

PC1「C:\users\m.saito\GoogleDrive」
PC2「C:\users\saito\GoogleDrive」
CakePHP index.php<どっち選んでも片方エラー出るんだけど詰んでない?)

CakePHPのhtdocsの移動

「C:\GoogleDrive」ディレクトリにlocalhostディレクトリを作成しましょう。
ここにCakePHPのhtdocsディレクトリの中身を移します。

XAMPPの設定変更

C:\xampp\apache\confのhttpd.confを変更します。
251行目くらいにあるDocumentRootを下記の通りに変更してください。

DocumentRoot “C:/GoogleDrive/localhost”
<Directory “C:/GoogleDrive/localhost”>

CakePHPのindex.phpの変更

CakePHPのドキュメントルートにあるindex.phpのROOTを設定します。

通常は下記のようにしていると思いますが、

define('ROOT', DS.'xampp'.DS.'htdocs'.DS.'home'.DS.'cake');

下記の通りに変更してください。

define('ROOT', DS.'GoogleDrive'.DS.'localhost'.DS.'home'.DS.'cake');

XAMPPの再起動

XAMPPを再起動させてください。
それで問題なく動くと思います。

共有PCの設定

同じように作業したいPCには、今回の手順の「CakePHPのhtdocsの移動」以外を行ってください。
その後GoogleDriveが共有されれば、問題なく動きます。

動かない場合は・・・

エラー文をググりましょう。
特に多そうなのが以下のような状況でしょうか。
・MySQLのrootのパスワードが違う→一致させてね
・データベースに接続できない→cake/app/Config/database.phpの中身見てね
・文字コードが一致しない→MySQL 8 のデフォルト文字セット系をすべて utf8mb4 にする cnf の書き方メモ・・・おすすめはutf8mb4です。utf8でもいい感じ。統一しましょう!(ただしmy.cnfはmy.iniに名前変更されている)
引っかかるところがあれば聞いてくださいませ。

-Web制作

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

Windows(64bit)環境でgccコマンドを使うためのMinGW-W64インストール

Windows10(64bit)環境でgccコマンドを使いたいということで、MinGWのインストールを行います。MinGWはコンパイラ(解読機)であり、プログラム言語であるC言語やC++の開発にも使用 …

no image

swiftでゲームプログラミング(開始前)

iPhoneアプリを開発するために必要な言語「Swift」 そういえばこれまで適当な書き方で無理やり実装していたなと思い、教科書的なものを買いました。 初心者の人は独学でやるより、教科書買ってやった方 …

VPSでつくるPythonでのWebアプリ運用環境(連載記事)

今風のWebアプリをリリースするにはレンタルサーバーでは物足りない! 例えば、PythonやRubyに対応しているレンタルサーバーはあまりありません。加えて、データサイエンスや機械学習に強いプログラム …

pythonのnumpyで遊ぶ

異常に奥が深いnumpyで遊びましょう!! import numpy as np 配列の形状変換 a = np.arange(int(np.floor(np.random.rand()*1000))) …

TensorFlowまで到達

ちょいちょい数式に詰まりながらも、DeeplearningのフレームワークTensorFlowの学習まで漕ぎ着けました。 一番困ったのは「説明無しで数式使うよ!」 マジやめてください・・・まあ勉強する …