Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save deroter/4950463 to your computer and use it in GitHub Desktop.
Save deroter/4950463 to your computer and use it in GitHub Desktop.
まとめ:# はじめてのサーバサイド w: AWS in 大阪

はじめてのサーバサイド w/ AWS in 大阪

ローカルサーバーの起動

ルートをDropboxにすると便利そう。次回もしくは追記します。 バーチャルホストの設定が管理上楽になると思いますのでその通りに。 追記:Xcodeとhomebrewくらいは入れておいた方がよさげです。 特にhomebrewはDB入れるときに必要だったりしますので

http://mxcl.github.com/homebrew/

$ ruby -e "$(curl -fsSL https://raw.github.com/mxcl/homebrew/go)"

起動

以下コマンドを入力

$ sudo apachectl start

まずは起動。設定代えたら再起動。 10.7だとコンパネからも起動できるよ。

httpd-vhosts.confを作成

ファイルはこちらからコピペ

https://gist.github.com/gaspanik/4842129

作成先はとりあえず ~/Sites/ でおkです。 ついでに「logs」フォルダも作っておきましょう。

Sublimetext2をお使いの場合はapacheconfっていうプラグインが便利。 apacheの記述を分かりやすい色付きで表示してくれるのでシンタックスエラーが減るかも。 インストールはお決まりのcmd+shift+pでパッケージコントロール呼び出して、installからapacheconfでおk

シンボリックリンクを作成

以下コマンドを入力

$ sudo ln -s ~/Sites/httpd-vhosts.conf /etc/apache2/other

コマンドを入力したら/etc/apache2/otherにシンボリックリンクができてることを確認する。

hostsに追加

/etc/hosts

最下部のコメントアウト部分をコピペ。 次にコピペした分のコメントアウトを解除して設定した情報に書き換える。 以下のように追加

127.0.0.1 localhost

から

127.0.0.1 localhost domain.local(←半角スペース入れて複数追加可能)

のように作成したhttpd-vhosts.confを編集。

httpd.confに追加

/private/etc/apache2/httpd.confの最下部に

Include /etc/apache2/other/*.conf

って追記して保存。

httpd.confを直接読む場合は apachectl -f /private/etc/apache2/httpd.conf

再起動

$ sudo apachectl restart

ストップの場合

$ sudo apachectl stop

うまくいかない場合

$ sudo apachectl configtest

でエラーのチェックを行う。

ブラウザで確認

http://127.0.0.1/

参考

https://gist.github.com/gaspanik/3806975

文法チェック

$ apachectl configtest

apacheの設定ファイル

private/etc/apache2/httpd.conf デフォルトは全許可になっている。 基本的には現段階で触る必要はないかも。 場所だけ覚えておこう

注意点

80番ポートが他で使われているとうまく動作しないので注意。 他で使用されている場合の解除は以下のような感じ。

※2013/2/13時点では自宅環境でエラーでて困ったちゃん。 後日レポします。 private/etc/apache2/httpd.conf こいつが原因くさい。英語のドキュメントが待ってるぜ…

以降の作業の流れ

1.ローカル環境用のフォルダを作る。今回の場合だとdomain.local 2.バーチャルホストの設定を追加。httpd-vhosts.confに追記 3.ドメインは適当でおk。自分が分かるようにしよう。 4.apacheを再起動

PHPのインストール

ローカルにPHPをインストール

phpは5.4のがいい 入れるのはこっからコマンドをコピペ

http://php-osx.liip.ch/

ちなみに5.4の場合は以下のような感じ。

$ curl -s http://php-osx.liip.ch/install.sh | bash -s 5.4

ちゃんとはいったか確認

phpinfoを作って確認する。

記述例

<?php phpinfo(); ?>

をphpinfo.phpという名前で保存。

ブラウザで確認

http://127.0.0.1/phpinfo.php

設定ファイルはphpinfo.phpの「Loaded Configuration File」を見たら分かるよ。 僕の環境だと

/usr/local/php5/lib/php.ini

にありました。こちらも設定ファイルの場所を覚えておく。

DBのインストール

Macの場合だとMySQLよりもMariaDBの方がいいらしいので以降MariaDBで説明します。 MariaDBはMySQLと基本的には同じらしい。

DBはhomebrewで入れるよ。以下コマンドを入力。

$ ruby <(curl -fsSkL raw.github.com/mxcl/homebrew/go)

すでに入れてる人は

$ brew update

でアップデートしましょう。

MariaDBのインストール

$ brew install mariadb

結構時間かかるのでスイーツ休憩推奨。

インストール後の流れ

インストールが完了すると初期設定を行います。 インストール完了直前にターミナルに以下のような記述が出てくるので、まずはエディタ等にコピペしておきましょう。

Set up databases with: unset TMPDIR mysql_install_db --user=whoami --basedir="$(brew --prefix mariadb)" --datadir=/usr/local/var/mysql --tmpdir=/tmp

To have launchd start mariadb at login: ln -sfv /usr/local/opt/mariadb/*.plist ~/Library/LaunchAgents Then to load mariadb now: launchctl load ~/Library/LaunchAgents/homebrew.mxcl.mariadb.plist Or, if you don't want/need launchctl, you can just run: mysql.server start

では順番に

$ unset TMPDIR

$ mysql_install_db --user=`whoami` --basedir="$(brew --prefix mariadb)" --datadir=/usr/local/var/mysql --tmpdir=/tmp

$ mysql.server start

$ /usr/local/Cellar/mariadb/5.5.29/bin/mysqladmin -u root password 'new-password'

$ mysql.server stop

こんな感じで。 いったん止めて、初期設定ファイルを用意する。

HomebrewのCellarディレクトリの中にデフォルトの「my.cnf」がいくつかあるので、 それを「/etc/my.cnf」にコピーする。

$ sudo cp -a /usr/local/Cellar/mariadb/5.5.29/support-files/my-small.cnf /etc/my.cnf

コピーできたらパーミッションを変更する。

$ sudo chmod 777 /etc/my.cnf

パーミッション変更後はviで編集しよう。

$ sudo vi /etc/my.cnf

/etc/my.cnfの設定一覧。文字コード系をしておけばとりあえずよさげ。

[client] default-character-set = utf8 [mysqld] max_allowed_packet = 64M character-set-server = utf8 [mysql] default-character-set = utf8

変更後はパーミッションを元に戻す。644でおk。

$ sudo chmod 644 /etc/my.cnf

元に戻せたら、起動!

$ mysql.server start

次はログインするよ。

$ mysql -u root -p

パスワードを聞かれるので入力するとログインできる。 ログインするときはidがroot、パスがMariDB作ったときのパスでログイン。

困ったときはこれ

$ sudo /usr/local/Cellar/mariadb/5.5.29/bin/mysql_secure_installation

うまくいかない場合には一度やってみよう。

MariaDBの自動起動

以下のコマンドを実行すればよい。 LaunchAgentsディレクトリがなかったら先に作っておく。

$ cp /usr/local/Cellar/mariadb/5.5.29/homebrew.mxcl.mysql.plist ~/Library/LaunchAgents/

ファイルをロードする設定を追加

$ launchctl load -w ~/Library/LaunchAgents/homebrew.mxcl.mysql.plist

以上でおしまい。 どうしてもうまくいかないときは入れ直すとよい。

アンインストールの仕方はこここちら [http://www.sitepoint.com/forums/showthread.php?859646-Can-t-connect-to-local-MySQL-server-through-socket-tmp-mysql-sock-(2)-(Mysql-Erro](http://www.sitepoint.com/forums/showthread.php?859646-Can-t-connect-to-local-MySQL-server-through-socket-tmp-mysql-sock-(2)-(Mysql-Erro)

phpmyadmin

phpmyadminはhomebrewから入れないほうがいいとの事。 余分なものがついてくるらしい。 ダウンロードはこちら

http://www.phpmyadmin.net/home_page/downloads.php

ダウンロード後はhttpd-vhosts.confに記載のディレクトリ(/Sites/とか)に入れる。

次にhttpd-vhosts.confにエイリアスの記述を追加。以下のような感じで。

Alias /phpmyadmin /Users/ユーザー名/Sites/phpmyadmin <Directory "/Users/ユーザー名/Sites/phpmyadmin/"> Options Indexes FollowSymLinks MultiViews AllowOverride All Order allow,deny Allow from all

記述後はブラウザで確認。 ログインするときはidがroot、パスがMariDB作ったときのパスでログイン。

補足

Wordpress界隈の人だとperconaが人気らしい。

http://www.percona.com/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment