次にLAMPを作ってく
◆LAMPとは
L | Linux | オペレーティング・システム |
A | Apache | Webサーバ |
M | MySQL | データベース |
P | PHP | プログラム言語 |
◆前準備
- パッケージ管理を最新 まず最初にパッケージ管理を最新にしておく
- おまじない プログラマあるある(笑)処理が早くなる。
- ファイヤーウォールを切る
- yumのカスタム CentOSはPHP、MySQLは公式では最新のバージョンを取得できない。なので別のパッケージでyumコマンドをカスタムする必要がある。→ epel、remiリポジトリを導入
- epel導入 https://dl.fedoraproject.org/pub/epel/6/x86_64/
- remi導入 http://rpms.famillecollet.com/
$ sudo yum update
名前解決の問題なんだけど、今回は関係ないので説明は割愛
$ sudo vi /etc/resolv.conf options single-request-reopen # ←コレ追加 ; generated by /sbin/dhclient-script nameserver 10.0.2.3
$sudo service iptables stop $sudo chkconfig iptables off # 再起動しても切るようにする
コマンド | 意味 |
---|---|
wget [リンクアドレス] | リポジトリのダウンロードコマンド |
rpm -Uvh [パッケージ名] | リポジトリのインストールコマンド |
$ wget -v -bash: wget: command not found # この表示がでたらwgetが使えない $ sudo yum install wget # なのでwgetをインストールする
上記URLから「epel-release- (略」で始まる新しそうなパッケージのリンクアドレスを取得。今回の場合は「epel-release-6-8.noarch.rpm」のリンクアドレス
$ wget https://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm $ sudo rpm -Uvh epel-release-6-8.noarch.rpmほかのソフトのインストール時、いろんなパッケージと競合するとめんどいので必要な場合のみepelを有効にするように設定
$ sudo vi /etc/yum.repos.d/epel.repo enabled=0 # 最初は1になってるけど、0に修正
CentOS6なので、このリンクアドレス

$wget http://rpms.famillecollet.com/enterprise/remi-release-6.rpm $ sudo rpm -Uvh remi-release-6.rpmremiはデフォルトで「enabled=0」
なので修正不要
まず、すでにインストールされているかチェック
$ yum list installed | grep httpd何も表示されなければインストールされていない。下のコマンド実行
$ sudo yum install -y httpd $ sudo service httpd start # 起動させる $ sudo chkconfig httpd on # Linux起動時に自動起動するよう設定◆PHPの導入
- PHP全部インストール 欲張ってこの辺全部入れる
- 設定変更する php.iniファイルを修正
- 設定を有効にする
パッケージ | 意味 |
---|---|
php | PHPを使えるようにする |
php-devel | PHP 拡張を構築するのに必要なファイル |
php-mysql | MySQLを使うためのPHP 拡張ファイル |
php-mbstring | 多言語(日,中,韓,露,etc..)用PHP 拡張ファイル |
php-gd | 画像処理(JPEG,PNG,GIF)のPHP 拡張ファイル |
$ sudo yum --enablerepo=remi install -y php php-devel php-mysql php-mbstring php-gd
$ sudo vi /etc/php.ini (略) # エラーログを出力するように ; Log errors to specified file. PHP's default behavior is to leave this value ; empty. ; http://php.net/error-log ; Example: ;error_log = php_errors.log ; Log errors to syslog (Event Log on Windows). ;error_log = syslog error_log = /var/log/php.log # ←追加 (略) # 文字の設定 [mbstring] ; language for internal character representation. ; http://php.net/mbstring.language mbstring.language = Japanese # ←文頭のセミコロンをとる (略) # 文字コードの設定 ; internal/script encoding. ; Some encoding cannot work as internal encoding. ; (e.g. SJIS, BIG5, ISO-2022-*) ; http://php.net/mbstring.internal-encoding ;mbstring.internal_encoding = EUC-JP mbstring.internal_encoding=UTF-8 # ←追加 (略) # 内部文字エンコーディング ; http input encoding. ; http://php.net/mbstring.http-input mbstring.http_input = auto # ←セミコロンを外す (略) # 出力文字エンコーディング ; automatic encoding detection order. ; auto means ; http://php.net/mbstring.detect-order mbstring.detect_order = auto # ←セミコロンを外す (略) # phpを使用していることを隠す?ちょっと謎 expose_php = Off # ←Offにする (略) # 時刻の地域 [Date] ; Defines the default timezone used by the date functions ; http://php.net/date.timezone ;date.timezone = date.timezone = Asia/Tokyo # 追加する (略)
$ sudo service httpd restart
◆MySQLの導入
- インストール
- 設定を変更 my.cnfファイルに設定を追記する
- 設定を有効
$ sudo yum install -y --enablerepo=remi mysql-server
色がついてる行を追加
$ sudo vi /etc/my.cnf [mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock character_set_server=utf8 default-storage-engine=InnoDB innodb_file_per_table [mysql] default-character-set=utf8 [mysqldump] default-character-set=utf8 # Disabling symbolic-links is recommended to prevent assorted security risks symbolic-links=0 略
$ sudo service mysqld start # mysqlの初期設定 $ /usr/bin/mysql_secure_installation Enter current password for root (enter for none): # Enter押す Set root password? [Y/n] y # y押す New password: # パスワードを設定 ←!絶対忘れてはいけない! Re-enter new password: # パスワードを再入力 Remove anonymous users? [Y/n] # y押す Disallow root login remotely? [Y/n] # y押す Remove test database and access to it? [Y/n] # y押す Reload privilege tables now? [Y/n] # y押す # 再起動時も設定を有効 $ sudo chkconfig mysqld on
動作確認の方法、便利ツールとかはまた次回!
0 件のコメント:
コメントを投稿