伍哥原创之安装nginx,mysql,php-fpm,redis
為什么80%的碼農都做不了架構師?>>> ??
【伍哥原創】
v1.0 2012-6-4 初稿
v1.1 2012-6-5 更新,增加php-redis模塊的編譯安裝
【正文】
本文目的
CentOS 6.2 下通過yum安裝nginx,mysql,php-fpm,redis。
環境準備
一臺安裝了CentOS 6.2的機器,可參考教程U盤安裝CENTOS 6.2 32位系統(有圖有真相)進行安裝。
為什么通過yum進行安裝?
在linux上安裝軟件,除了tarball方式以外,就是通過包管理程序來安裝了。yum安裝一個好處是升級非常的方便。當然tarball也有它的好處,產品環境請盡量使用tarball編譯安裝。至于選擇那種方案就見仁見智。
開始安裝
1,如果你不在機器(伍哥實驗的機器IP是192.168.1.100)面前,請通過ssh連上服務器,最好使用root身份登錄
ssh root@192.168.1.100
2,確認你的機器連上網絡(如果網絡都沒有,還能yum嗎?)
ping -c4 mirrors.163.com
如果不能ping通,請依次處理:
修改機器的IP配置
vim /etc/sysconfig/network-scripts/ifcfg-eth0
修改DNS服務器配置
vim /etc/resolv.conf
修改網絡配置
vim /etc/sysconfig/network
重啟網絡
/etc/init.d/network restart
3,配置CentOS-Base.repo的bashurl為 mirrors.163.com,這樣yum下載安裝包就快很多了
vim /etc/yum.repos.d/CentOS-Base.repo
把所有mirrorlist的行都加上#,把所有baseurl的#去掉,把域名修改為mirrors.163.com,例如:
baseurl=http://mirrors.163.com/centos/$releasever/os/$basearch/ (其他類似操作)
4,安裝yum-priorities
yum install yum-priorities
5,增加其他的軟件庫epel和remi,因為remi依賴epel,所以先加入epel,再加入remi
rpm -Uvh http://mirrors.ustc.edu.cn/epel/6/i386/epel-release-6-7.noarch.rpm
接著編輯epel的repo配置文件
vim /etc/yum.repos.d/epel.repo
把所有mirrorlist的行都加上#,把所有baseurl的#去掉,把域名修改為mirrors.ustc.edu.cn,例如:
baseurl=http://mirrors.ustc.edu.cn/epel/6/$basearch (其他類似操作)
rpm -Uvh http://rpms.famillecollet.com/enterprise/remi-release-6.rpm
6,修改epel和remi的repo配置文件的優先級
vim /etc/yum.repos.d/epel.repo
然后每一項都加上priority=10
vim /etc/yum.repos.d/remi.repo
也是每一項都加上priority=10
7,yum安裝nginx,mysql,php-fpm及相關模塊,redis (一次安裝這么多東東,爽!)
分別是nginx,mysql客戶端,mysql服務器,php及相關模塊,memcache模塊,php加速器eaccelerator
yum install nginx mysql mysql-server php php-fpm php-cli php-pdo php-mysql php-mcrypt php-mbstring php-gd php-tidy php-xml php-xmlrpc php-pear php-devel php-pecl-memcache php-eaccelerator
8,增加系統用戶web(nginx和php-fpm將以此用戶身份運行)和web目錄
useradd -r web
mkdir /web
9,配置及啟動nginx
vim /etc/nginx/nginx.conf
把里面的user項改為web
vim /etc/nginx/conf.d/default.conf
并修改成
提醒:每個配置都必須以分號結束;fastcgi_param應使用$document_root代替hard-code的路徑。
把nginx加入為開機啟動項目
chkconfig nginx on
啟動nginx
/etc/init.d/nginx start
10,啟動并配置mysql
mysql比較特別點,需要先啟動,然后配置
/etc/init.d/mysqld start
配置root密碼
mysql_secure_installation
由于root沒有初始密碼,所以當提示輸入密碼時,直接按回車跳過,然后配置root密碼,其他都直接按回車使用默認
把mysqld加入為開機啟動項目
chkconfig mysqld on
11,啟動redis,并安裝php-redis模塊
把redis加入為開機啟動項目
chkconfig redis on
啟動redis服務
/etc/init.d/redis start
先把開發工具組相關的包裝一下
yum groupinstall “development tools”
然后開始編譯安裝php-redis模塊
cd /tmp
wget https://github.com/nicolasff/phpredis/zipball/master -O php-redis.zip
unzip php-redis.zip
解壓后目錄是:nicolasff-phpredis-21d6614
cd nicolasff-phpredis-21d6614
phpize
./configure
make
make install
確認一下so文件已經放置到正確目錄
ll /usr/lib/php/modules/redis.so
新建redis.ini,然后加入 extension=redis.so,以啟用redis extension
vim /etc/php5/fpm/conf.d/redis.ini
12,配置并啟動php-fpm
vim /etc/php-fpm.d/www.conf
把里面的user和group項改為web
vim /etc/php.ini
找到display_errors,把off改成on,這個設置是為了方便后面的調試,產品環境請設置為off
找到session.save_handler,把files改成redis
找到session.save_path,改成session.save_path = “tcp://127.0.0.1:6379?timeout=2″
把php-fpm加入為開機啟動項目
chkconfig php-fpm on
啟動fmp服務
/etc/init.d/php-fpm start
13,通過shell腳本檢查各個進程和服務
vim check.sh
增加代碼
然后執行此腳本
sh check.sh
查看各個進程和服務的狀態(注意紅色高亮字體哦)
14,安裝mysql管理工具phpmyadmin
cd /web
wget http://nchc.dl.sourceforge.net/project/phpmyadmin/phpMyAdmin/3.5.1/phpMyAdmin-3.5.1-english.tar.gz
tar zxvf phpMyAdmin-3.5.1-english.tar.gz
mv phpMyAdmin-3.5.1-english phpmyadmin
chown -R web.web phpmyadmin
cp phpmyadmin/config.sample.inc.php phpmyadmin/config.inc.php
15,打開80端口
vim /etc/sysconfig/iptables
在-A INPUT -m state –state NEW -m tcp -p tcp –dport 22 -j ACCEPT加上一句
-A INPUT -m state –state NEW -m tcp -p tcp –dport 80 -j ACCEPT
然后重啟iptables
/etc/init.d/iptables restart
16,訪問phpmyadmin
http://192.168.1.100/phpmyadmin/
如果phpmyadmin可以正常操作mysql,則表示系統配置的nginx服務,php-fpm服務,mysql數據庫及redis緩存服務一切正常!
在產品環境,請移除phpmyadmin或者把目錄全部權限關閉:chmod 0000 phpmyadmin
轉載于:https://my.oschina.net/alexwu/blog/71166
總結
以上是生活随笔為你收集整理的伍哥原创之安装nginx,mysql,php-fpm,redis的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: HttpClient+jsoup登录+解
- 下一篇: 动态加载javascript