CentOS6.6搭建LNMP環境

CentOS6.6搭建LNMP環境

一、設置yum源,本地安裝依賴包php

1
[html]  view plain  copy
 
  1. yum -y install gcc gcc-c++ automake autoconf libtool make  

二、下載依賴包html

1
2
3
4
[html]  view plain  copy
 
  1. wget http://www.openssl.org/source/openssl-1.0.2-latest.tar.gz  
  2. wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.34.tar.bz2  
  3. wget http://www.zlib.net/zlib-1.2.8.tar.bz2  
  4. wget http://nginx.org/download/nginx-1.8.0.tar.gz  

三、安裝pcre8.34mysql

1
2
3
4
[html]  view plain  copy
 
  1. tar zxvf pcre-8.34.tar.gz  
  2. mkdir /usr/local/pcre8.34  
  3. ./configure --prefix=/usr/local/pcre/  
  4. make && make intall  

四、安裝zlib1.2.8nginx

1
2
3
4
5
6
7
[html]  view plain  copy
 
  1. cd /usr/local/src  
  2. wget http://zlib.net/zlib-1.2.8.tar.gztar -zxvf zlib-1.2.8.tar.gz  
  3. mkdir /usr/local/zlib  
  4. cd zlib-1.2.8  
  5. ./configure --prefix=/usr/local/zlib/  
  6. make  
  7. make install  

五、安裝opensslc++

1
2
3
4
5
6
7
[html]  view plain  copy
 
  1. cd /usr/local/src  
  2. wget http://www.openssl.org/source/openssl-1.0.2-latest.tar.gz  
  3. cd openssl-1-1.0.2-lastest  
  4. mkdir /usr/local/openssl  
  5. ./config --prefix=/usr/local/openssl  
  6. make  
  7. make install  

六、安裝防盜鏈模塊web

1
2
3
4
5
6
7
8
[html]  view plain  copy
 
  1. tar zxvf nginx-accesskey-2.0.3.tar.gz  
  2. cd nginx-accesskey-2.0.3/  
  3. 解壓此文件後,找到nginx-accesskey-2.0.3下的config文件。  
  4. 編輯此文件:替換其中的"$HTTP_ACCESSKEY_MODULE"爲"ngx_http_accesskey_module"  
  5. vi config  
  6. 修改結果以下:  
  7. #HTTP_MODULES="$HTTP_MODULES $HTTP_ACCESSKEY_MODULE"  
  8. HTTP_MODULES="$HTTP_MODULES ngx_http_accesskey_module"  

七、安裝nginx1.8.0,–with-***設置的是模塊源碼包的路徑sql

1
2
3
4
5
6
7
8
9
10
[html]  view plain  copy
 
  1. ./configure --sbin-path=/usr/local/nginx/nginx \  
  2. --conf-path=/usr/local/nginx/nginx.conf \  
  3. --pid-path=/usr/local/nginx/nginx.pid \  
  4. --with-http_ssl_module \  
  5. --with-pcre=/usr/local/src/pcre \  
  6. --with-zlib=/usr/local/src/zlib \  
  7. --with-openssl=/usr/local/src/openssl \  
  8. --add-module=/usr/local/src/nginx-accesskey-2.0.3/  
  9. make  
  10. make  install  

八、安裝完成啓動nginxshell

1
[html]  view plain  copy
 
  1. /usr/local/nginx/nginx  

查看端口確認是否啓動成功數據庫

1
[html]  view plain  copy
 
  1. netstat -tunpl | grep 80  

訪問服務器,看到以下效果:
Welcome to nginx!
If you see this page, the nginx web server is successfully installed and working. Further configuration is required.
For online documentation and support please refer to nginx.org.
Commercial support is available at nginx.com.
Thank you for using nginx.bootstrap

若是不能訪問,檢測防火牆80端口是否開啓,編輯防火牆配置文件 vi /etc/sysconfig/iptables :

1
2
[html]  view plain  copy
 
  1. -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT  
  2. -A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT  

九、安裝PHP5.5.21
先安裝依賴包:

1
[html]  view plain  copy
 
  1. yum -y install gcc gcc-c++ automake autoconf libtool make glibc  libmcrypt-devel mhash-devel libxslt-devel libjpeg libjpeg-devel libpng libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel  

以下的四個包沒有安裝
No package libmcrypt-devel available.
No package mhash-devel available.
No package krb5 available.

沒有裝的三個軟件經過源碼包的方式編譯安裝

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
[html]  view plain  copy
 
  1. tar zvxf php-5.5.21.tar.gz  
  2. cd php-5.5.21  
  3. ./configure \  
  4. --prefix=/usr/local/php \  
  5. --with-config-file-path=/usr/local/php/etc \  
  6. --enable-fpm \  
  7. --with-mcrypt=/usr/local/libmcrypt \  
  8. --enable-mbstring \  
  9. --enable-pdo \  
  10. --with-curl \  
  11. --disable-debug  \  
  12. --disable-rpath \  
  13. --enable-inline-optimization \  
  14. --with-bz2  \  
  15. --with-zlib \  
  16. --enable-sockets \  
  17. --enable-sysvsem \  
  18. --enable-sysvshm \  
  19. --enable-pcntl \  
  20. --enable-mbregex \  
  21. --with-mhash=/usr/local/mhash \  
  22. --enable-zip \  
  23. --with-pcre-regex \  
  24. --with-mysql \  
  25. --with-mysqli \  
  26. --with-gd \  
  27. --with-jpeg-dir  
  28.    
  29. make && make install  

修改nginx配置文件,讓nginx支持php請求,在nginx.conf的server段中添加以下代碼

1
2
3
4
5
6
7
[html]  view plain  copy
 
  1. location ~ \.php$ {  
  2. root           html;  
  3. fastcgi_pass   127.0.0.1:9000;  
  4. fastcgi_index  index.php;  
  5. fastcgi_param  SCRIPT_FILENAME  $document_root/$fastcgi_script_name;  
  6. include        fastcgi_params;  
  7. }  

複製PHP的配置文件

1
2
[html]  view plain  copy
 
  1. cd  /usr/local/src/php-5.5.21  
  2. cp ./php.ini-development /usr/local/php/etc/php.ini  

設置Php-fpm配置文件

1
2
[html]  view plain  copy
 
  1. cd  /usr/local/php/etc/  
  2. cp  php-fpm.conf.default php-fpm.conf  

啓動php管理程序php-fpm

1
[html]  view plain  copy
 
  1. /usr/local/php/sbin/php-fpm  

關閉 php-fpm

1
[html]  view plain  copy
 
  1. Killall php-fpm  

啓動nginx,訪問以下頁面
啓動:

1
[html]  view plain  copy
 
  1. /usr/local/nginx/nginx  

從新加載配置文件

1
[html]  view plain  copy
 
  1. /usr/local/nginx/nginx –s reload  

十、給PHP編譯擴展(zendopcache和memcache)
php編譯zendopcache緩存擴展(目前PHP的緩存插件通常有三個:APC、eAccelerator、XCache)
編譯安裝PHP5.5的時候加上

1
[html]  view plain  copy
 
  1. --enable-opcache  

提示錯誤。須要單獨安裝,依次執行下面的命令

1
2
3
4
[html]  view plain  copy
 
  1. wget http://pecl.php.net/get/zendopcache-7.0.2.tgz  
  2. tar xzf zendopcache-7.0.2.tgz  
  3. cd zendopcache-7.0.2  
  4. /usr/local/php/bin/phpize  

若是找不到phpize的話,本身查看本地的PHP路徑,下面也要按你的php.ini路徑自行修改

1
2
3
[html]  view plain  copy
 
  1. ./configure --with-php-config=/usr/local/php/bin/php-config  
  2. make  
  3. make install  

若是顯示:
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/ 表示安裝完成,下面要修改php的配置文件讓它生效,在 php.ini 的最後面加入下面幾行

1
2
3
4
5
6
7
[html]  view plain  copy
 
  1. zend_extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/opcache.so  
  2. opcache.memory_consumption=128  
  3. opcache.interned_strings_buffer=8  
  4. opcache.max_accelerated_files=4000  
  5. opcache.revalidate_freq=60  
  6. opcache.fast_shutdown=1  
  7. opcache.enable_cli=1  

重啓php-fpm
Phpinfo()查看的結果以下,擴展安裝完成
This program makes use of the Zend Scripting Language Engine:
Zend Engine v2.5.0, Copyright (c) 1998-2014 Zend Technologies
with Zend OPcache v7.0.2, Copyright (c) 1999-2013, by Zend Technologies

//給php編譯安裝memcache擴展
下載memcache-3.0.8.tgz解壓:

1
2
3
4
5
[html]  view plain  copy
 
  1. tar zxvf memcache-3.0.8.tgz  
  2. cd memcache-3.0.8  
  3. /usr/local/php/bin/phpize  
  4. ./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir  
  5. make && make install  

成功後提示:
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/
將擴展添加到php配置文件

1
[html]  view plain  copy
 
  1. extension=/usr/local/php/lib/php/extensions/no-debug-non-zts-20121212/memcache.so  

重啓php-fpm

1
2
[html]  view plain  copy
 
  1. killall php-fpm  
  2. /usr/local/php/sbin/php-fpm  

十、安裝MYSQL5.6
安裝依賴包bison:

1
[html]  view plain  copy
 
  1. Yum install bison  

安裝cmake
cmake下載地址:http://www.cmake.org/

1
2
3
4
5
[html]  view plain  copy
 
  1. tar zxvf cmake-2.8.5.tar.gz   
  2. cd cmake-2.8.5  
  3. ./bootstrap  
  4. make   
  5. make install  

安裝ncurses
ncurses下載地址:http://www.gnu.org/software/ncurses/

1
2
3
4
5
[html]  view plain  copy
 
  1. tar zxvf ncurses-5.8.tar.gz   
  2. cd ncurses-5.8   
  3. ./configure   
  4. make   
  5. make install  

11.開始安裝MySQL
MySQL5.6下載地址:http://dev.mysql.com/
這裏我在這裏下載的mysql-5.6.12.tar.gz
ftp://mirror.switch.ch/mirror/mysql/Downloads/MySQL-5.6/
準備工做

1
2
[html]  view plain  copy
 
  1. groupadd mysql   
  2. useradd mysql -g mysql -M -s /sbin/nologin  

增長一個名爲 mysql的用戶。
-g:指定新用戶所屬的用戶組(group)
-M:不創建根目錄
-s:定義其使用的shell,/sbin/nologin表明用戶不能登陸系統。

解壓並安裝MySQL

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
[html]  view plain  copy
 
  1. tar zxvf mysql-5.6.12.tar.gz   
  2. cd mysql-5.6.12   
  3. mkdir /usr/local/mysql5.6  
  4.    
  5. cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql5.6 \  
  6. -DMYSQL_DATADIR=/usr/local/mysql5.6/data  \  
  7. -DSYSCONFDIR=/etc   \  
  8. -DWITH_MYISAM_STORAGE_ENGINE=1  \  
  9. -DWITH_INNOBASE_STORAGE_ENGINE=1   \  
  10. -DWITH_READLINE=1   \  
  11. -DMYSQL_UNIX_ADDR=/tmp/mysqld.sock   \  
  12. -DMYSQL_TCP_PORT=3306   \  
  13. -DENABLED_LOCAL_INFILE=1   \  
  14. -DWITH_PARTITION_STORAGE_ENGINE=1  \  
  15. -DEXTRA_CHARSETS=all   \  
  16. -DDEFAULT_CHARSET=utf8   \  
  17. -DDEFAULT_COLLATION=utf8_general_ci   
  18.    
  19. make   
  20. make install  

設置MYSQL權限

1
2
3
4
5
6
[html]  view plain  copy
 
  1. cd /usr/local/mysql   
  2. chown -R mysql:mysql ./*    
  3. /usr/local/mysql/scripts/mysql_install_db --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data &   
  4. chown -R root:mysql ./*  
  5. chown -R mysql:mysql ./data  
  6. chmod -R ug+rwx  ./*  

將mysql的配置文件拷貝到/etc

1
[html]  view plain  copy
 
  1. cp support-files/my-default.cnf  /etc/my.cnf  

修改my.cnf配置

1
[html]  view plain  copy
 
  1. vi /etc/my.cnf  

[mysqld] 下面添加:

1
2
3
[html]  view plain  copy
 
  1. user=mysql  
  2. datadir=/data/mysql  
  3. default-storage-engine=innodb  

8.啓動mysql

1
[html]  view plain  copy
 
  1. bin/mysqld_safe --user=mysql &  

檢查啓動是否成功

1
[html]  view plain  copy
 
  1. ps –ef|grep mysql  

檢查端口

1
[html]  view plain  copy
 
  1. netstat -tnl|grep 3306  

將mysql的啓動服務添加到系統服務中

1
2
3
4
5
6
7
[html]  view plain  copy
 
  1. cp support-files/mysql.server  /etc/init.d/mysqld   
  2. cd /etc/init.d/  
  3. chmod a+x mysqld  
  4. chkconfig --add mysqld  
  5. chkconfig --level 35 mysqld on  
  6. chkconfig --level 24 mysqld off  
  7. chkconfig --list | grep mysqld  

如今能夠使用下面的命令啓動mysqld

1
[html]  view plain  copy
 
  1. service mysqld  start  

中止mysqld服務

1
[html]  view plain  copy
 
  1. service mysqld stop  

重啓mysqld服務

1
[html]  view plain  copy
 
  1. service mysqld restart  

最後的任務登錄mysql數據庫服務器設置密碼

相關文章
相關標籤/搜索