vagrant php 환경 mailcatcher 설정 비망록(도중)

5962 단어 sendmailVagrantgmail

◆php 연습을 위해 vagrant 서버를 하나 만든다



※메일 송신의 테스트를 하고 싶기 때문에 mailcatcher를 사용해 연습용으로 설정한다
사실 postfix를 설정하여 gmail을 통해 메일을 보낼 수있는 것이 바람직합니다. . .
우선 연습처럼 mailcatcher를 사용해 본다.

◆vagrant 설정



필요한 도구 설치 및 구성 절차

설정 1
sudo yum -y update

설정 2
sudo yum -y install yum-cron wget vim install openssl-devel httpd mysql mysql-libs vim-enhanced bind-utils tree ImageMagick-devel mysql-devel libxml2-devel libxslt-devel libcurl-devel git gcc mysql-devel mysql2 libffi-devel ruby-devel gcc-c++ httpd httpd-devel apr-devel apr-util-devel libcurl-devel mariadb-server mariadb-devel ImageMagick ImageMagick-devel ipa-pgothic-fonts ruby-devel rubygems sqlite sqlite-devel

설정 3
sudo /etc/rc.d/init.d/yum-cron start
sudo chkconfig yum-cron on

설정 4
wget http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm
sudo rpm -Uvh epel-release-6-8.noarch.rpm

wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
sudo rpm -Uvh remi-release-6.rpm

설정 5
wget http://ftp.gnu.org/pub/gnu/libiconv/libiconv-1.13.1.tar.gz
tar xvfz libiconv-1.13.1.tar.gz
cd libiconv-1.13.1
./configure --prefix=/usr/local/Cellar/libiconv/1.13.1
make
sudo make install

설정 6
sudo yum -y install mysql-devel.x86_64 --enablerepo=remi

다음 파일 설정



설정 7
◆apacheの設定ファイル編集
-バックアップを作成する
sudo cp -pr /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.conf.org

-以下のファイルを編集
sudo vim /etc/httpd/conf/httpd.conf

# 44行目 OS情報を表示しないようにする
ServerTokens Prod

# 331行目 -(ハイフン)を追加
Options -Indexes FollowSymLinks

# 402行目 index.phpとindex.cgiを追加する
index.php index.cgi

# 536行目 OS情報を表示しないようにする
ServerSignature Off

# 990行目 コメントを外す(バーチャルホストを使えるようにする)
NameVirtualHost *:80

◆apacheの編集後確認コマンド
apachectl configtest

설정 8
◆◆◆PHPとMYSQLのインストールおよび・設定をおこなう。◆◆◆
◆◆remiとepelのインストール 各インストールできるパッケージが最新かどうか確認する。
yum info php
→この時に5.3.3になることを確認する。

◆設定ファイル変更
sudo vim /etc/yum.repos.d/epel.repo

※最初に出てくる↓の部分だけを変更するそれ以外は不要!!!
enables = 0

remiを使用してphpをインストールした時のバージョン確認
yum info --enablerepo=remi php
→この時に「Version:5.4.34」になればOK※もしくはバージョンが新しくなっていればOK

◆phpインストールコマンド
sudo yum --enablerepo=remi install -y php php-devel php-mysql php-mbstring php-gd

◆php.ini設定ファイルの編集 ※各設定箇所をコピーして検索してください。
-バックアップ取得
sudo cp -pr /etc/php.ini /etc/php.ini.org

sudo vim /etc/php.ini

※errorログの出力場所
error_log = /var/log/php.log

◆文字コード設定
検索:mbstring
1628行目:コメント削除:mb-string

1634行目:文字コードを変更:sjis → UTF-8

1638行目:コメント削除:http_input

1644行目:コメント削除:http_output

1656行目:コメント削除:detect-order

366行目:expose_php = Off

869行目:タイムゾーン変更:timezone Asia/Tokyo

◆変更したら保存して終了します。※このコマンドはvi,vimのコマンドです。各コマンドは調べてください。
:wq

설정 9
◆mysql install
sudo yum install -y --enablerepo=remi mysql-server

◆設定ファイ編集
-バックアップファイルの取得
sudo cp -pr /etc/my.cnf /etc/my.cnf.org

-設定ファイルの編集
sudo vim /etc/my.cnf

◆設定
※1行目からこちらに上書きしてください。全部で22行入る

-----
[client]
default-character-set=utf8
socket=/var/lib/mysql/mysql.sock

[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock

log_slow_queries
long_query_time = 1
slow_query_log_file=mysql-slow.log
log-queries-not-using-indexes

character_set_server=utf8
default-storage-engine=InnoDB
innodb_file_per_table

[mysql]
default-character-set=utf8

[mysqldump]
default-character-set=utf8
-----

◆DB起動
sudo service mysqld start

◆DBをつねに起動しておく
sudo chkconfig mysqld on

◆◆◆DBを初期化◆◆◆
mysql_secure_installation

◆◆◆DBを確認◆◆◆
mysql -u root -p

rbenv를 사용하여 ruby ​​설치



설정 10
◆◆◆◆◆◆◆◆◆◆ rubyをrbenvで導入する手順 ◆◆◆◆◆◆◆◆◆◆◆
vagrant userでrubyのバージョン確認
ruby -v
→必ずコマンドがないと聞かれるので慌てないでください。

※rbenvはgitからインストールする
git clone https://github.com/sstephenson/rbenv.git ~/.rbenv

※実行ファイルにpathを通す以下コマンド実行
echo 'export PATH="$HOME/.rbenv/bin:$PATH"' >> ~/.bash_profile
echo 'eval "$(rbenv init -)"' >> ~/.bash_profile
exec $SHELL -l

◆rbenvがインストールされているか確認
rbenv -v

◆ruby-buildインストール
git clone https://github.com/sstephenson/ruby-build.git ~/.rbenv/plugins/ruby-build

◆rbenvで最新のbバージョンを確認
rbenv install --list

◆補足:rubyの最新バージョンをインストール※バージョンは任意に選ぶことが可能です。その際は下のv以降を変更してください。
rbenv install -v 2.1.2
※新バージョンをインストールすることも可能です。

◆インストールしたら必ず以下のコマンドを実行する。※もしなにかしたら「rbenv rehash」
rbenv rehash

◆設定確認
rbenv versions

◆バージョンを選択
rbenv global 2.1.2

◆インストールしたら必ず以下のコマンドを実行する。※もしなにかしたら「rbenv rehash」
rbenv rehash

→この後もう一度バージョン確認

◆gemファイルをアップデート
gem update --system

◆バージョン確認
rails -v

◆gemの確認
gem env

◆必ずここでrehashすること。
rbenv rehash

◆bundleをインストールする。
gem install bundler

◆mailcatcherをインストール
gem install mailcatcher

mailcatcher 설정



설정 11
◆php.iniの設定
sudo vim /etc/php.ini

# 950行目 localhostから127.0.0.1に変更する
SMTP = 127.0.0.1

# 952行目 port番号を25→1025に変更する
smtp_port = 1025

# 957行目 sendmail_fromを追加する(メールアドレスは適宜変更する。)
sendmail_from = [email protected]

# 961行目 sendmail_pathをmailcatcherに変更する。
sendmail_path = /usr/bin/env catchmail

※ちなみにデフォルトはこうなっています。
sendmail_path = /usr/sbin/sendmail -t -i

메일 전송 테스트



◆php 파일을 만들어 테스트

php
◆mail.php
※例によって、$toと$headersの中身を変更する
<?php
$to      = '[email protected]';
$subject = 'the subject';
$message = 'hello';
$headers = 'From: [email protected]';
mail($to, $subject, $message, $headers);
?>

실행
※phpコマンドでテスト
php mail.php

실행 결과





비망록



◆mailcatcher 실행 방법

실행
mailcatcher --http-ip=192.168.33.10

※만약 실수하면 top명령으로 실행중의 pid를 확인해 kill할 수 밖에 없다(조사한 곳)

kill 명령 예제
kill -9 1625

좋은 웹페이지 즐겨찾기