かってぃのブログ

喫茶店を遊牧しながら勉強したり開発したりする大学院生のブログです。

katty0324

MacにWEBの開発環境整えた。結構めんどくさかった。(よく分からないこと多い)

on 2011-10-25 03:52:39

webから

Macで開発できるようにします。

今までWindowsとxampp環境でゴリゴリ開発してましたが、しばらくMac一本で行くことになりそうなので、Macの方にもWEBの開発環境を作りました。非常に個人的な内容が含まれてて、これからMacに環境構築するには冗長な部分があります。

Apacheの起動

システム環境設定 > 共有 > WEB共有 > ON

これだけ。ブラウザで http://localhost/ を開けばIt Worksが見えて、もうWEBサーバが動いてることが分かります。

バーチャルホストの設定

# テキトーなところにWeb用のディレクトリを作る。
cd
mkdir Web
cd Web
mkdir project
cd project

# どっかからソースコードをダウンロードしてくる。
git clone ssh://example.com/var/repos/www .

# hostsファイルの設定
sudo vim /private/etc/hosts

127.0.0.1       project.localhost

# バーチャルホストの設定
sudo cp /private/etc/apache2/original/extra/httpd-vhosts.conf /private/etc/apache2/extra/httpd-vhosts.conf
sudo vim /private/etc/apache2/extra/httpd-vhosts.conf

<VirtualHost *:80>
    DocumentRoot "/Users/username/Web/project"
    ServerName
project.localhost
    ServerAlias
project.localhost
    ErrorLog "/private/var/log/apache2/project.localhost-error_log"
    CustomLog "/private/var/log/apache2/
project.localhost-access_log" common
    <Directory "
/Users/username/Web/project">
         order deny,allow
         allow from All
    </Directory>
</VirtualHost>

# Apacheの設定(2行のコメントアウト外すだけ)
sudo vim /etc/apache2/httd.conf

LoadModule php5_module        libexec/apache2/libphp5.so
Include /private/etc/apache2/extra/httpd-vhosts.conf

# Apacheの再起動
sudo /usr/sbin/apachectl restart

これでPHPが動くようになるはず。PHPはMac OSに標準で入っているのでインストールする必要なしで、WEBサーバから使えるようにすればOK!

http://project.localhost/ を開くと、~/Web/projectの中に配置したページが表示されます。

Aptana Studio 3のインストール

愛するAptanaをインストールします。Windowsの時と同じ環境で開発できるのはありがたい。パーフェクトとは思いませんが使いやすい統合開発環境だと思います。

Aptana Studio 3

http://www.aptana.com/

MySQLのインストール

http://www.mysql.com/

MySQLのサイトからダウンロードします。Mac OS X ver. 10.6 (x86, 64-bit), DMGというやつをダウンロードしました。

展開したら、3つのプログラムを順番に実行していきます。これでMySQLサーバ起動完了。

mysql-5.5.17-osx10.6-x86_64.pkg
MySQLStartupItem.pkg
MySQL.prefPane

(参考)Mac OS XにMySQLをインストールしよう

PHPからMySQLに接続

# データベースにテスト用のデータをインポート
scp example.com:/home/username/mysqldump.sql .
/usr/local/mysql/bin/mysql -u user < mysqldump.sql

# PHPからMySQLに接続できるようにする
sudo cp /etc/php.ini.default /etc/php.ini
sudo chmod +w /etc/php.ini
sudo vim /etc/php.ini

mysql.default_socket = /private/tmp/mysql.sock

# mysql.sockの位置が分からなかった場合
sudo find / -name mysql.sock -print

# Apacheの再起動
sudo /usr/sbin/apachectl restart

MySQLサーバは立ち上がってるんですが、PHPから接続できなくて、「アレ?」となりますが、php.iniの設定を1行書き換えると接続できるようになります。

(参考)Mac OS X LeopardでPHPからMySQLに接続する

by katty0324 on 2011-10-25 04:32:30

コメント(0)

katty0324

jpeglibが入っていないといけないらしかった。 http://t.co/uP1KvHQ phpinfo()を見てImageMagick supported formatsにJPGがなかったのでインストールしたら動きました。

on 2011-07-21 23:20:21

webから

Imagickのインストール

ImageMagickをPHPから使うためのライブラリImagickをインストールします。

ImageMagick本体、Imagick、jpeglibの3点を入れれば動作します。

作業ログ

黒文字はターミナル上での作業、緑文字はアプリケーション内での作業、太字はアプリケーション内での入力ポイントです。

su
cd
wget ftp://ftp.kddlabs.co.jp/graphics/ImageMagick/ImageMagick-6.7.1-0.tar.gz
tar zxvf ImageMagick-6.7.1-0.tar.gz
cd ImageMagick-6.7.1-0
./configure
make
make install
pecl install imagick
vim /etc/php.ini

extension=imagick.so

/etc/init.d/httpd restart
cd
wget http://www.ijg.org/files/jpegsrc.v8c.tar.gz
tar zxvf jpegsrc.v8c.tar.gz
cd jpeg-8c/
./configure --enable-shared
make
make test
make install


by katty0324 on 2011-07-25 05:04:09

コメント(0)

katty0324

VirtualHostを使うと、ひとつのIPアドレスに複数のドメインを結びつけて、複数のWEBサイトを運営できる。

on 2011-07-21 03:35:14

webから

ドメインをたくさん取った

example.comとsample.comなど複数のドメインを運用することを考えます。サブドメインがたくさんある場合も同様です。

ドメインはDNSでIPアドレスと紐付けられます。ドメインは複数あるけど、IPアドレスがひとつしかない場合、というかWEBサーバがひとつしかない場合はどうしたら良いでしょうか?

ドメインごとにWEBサーバが用意できれば良いのですが、個人で小さなサービスを複数運営しようと思うと、あまり効率的ではありません。

VirtualHostで複数のサイトを運営する

VirtualHostを使うと、ひとつのIPアドレス、ひとつのWEBサーバで複数のサイトを運営することができます。

全てのドメインへのアクセスをひとつのサーバに集めた上で、「どのドメインから来たの?」を調べて内部で応答を振り分けます。

作業ログ

example.comとtest.example.comへのアクセスをVirtualHostで振り分ける例です。

/var/www/example.comと/var/www/test.example.comというディレクトリを作成し、それぞれに環境を構築します。あとは、Apacheの設定にVirtualHostの項目を追加するだけで振り分けができます。

httpd.confを開くとVirtualHostの項目がコメントアウトされているので、これを有効にして、書き換えればすぐに使うことができます。

黒文字はターミナル上での作業、緑文字はアプリケーション内での作業、太字はアプリケーション内での入力ポイント、赤文字は各自書き換えるポイントです。

cd /var/www
mkdir example.com
mkdir test.example.com
vim /etc/httpd/conf/httpd.conf

NameVirtualHost *:80
<VirtualHost *:80>
    DocumentRoot /var/www/example.com
    ServerName www.example.com
    ServerAlias example.com www.example.com
</VirtualHost>

<VirtualHost *:80>
    DocumentRoot /var/www/test.example.com
    ServerName
test.example.com
</VirtualHost>

/etc/init.d/httpd restart


by katty0324 on 2011-07-22 09:16:05

コメント(0)