生产环境Centos LNMP编译安装nginx-1.6 MySQL-5.6 php-5.5
安装版本号:
Centos6.5 64位最小化安装 MySQL-5.6.19 php-5.5.14 nginx-1.6.0
cmake2.8.7 libiconv-1.14 libmcrypt-2.5.8 mhash-0.9.9 zlib-1.2.5 libpng-1.6.2 freetype-2.4.12 jpegsrc.v9 gettext-0.18.1.1 mcrypt-2.6.8 memcache-2.2.7 ImageMagick-6.8.8-9 imagick-3.1.2 pcre-8.35
php模块
pthreads.so,redis.so,map.so,memcache.so,imagick.so,opcache.so,mongo.so
服务重新加载
service nginx reload
service php-fpm reload
service mysqld restart
配置文件路径
nginx: /usr/local/nginx/conf/nginx.conf
php:
/usr/local/php/etc/php-fpm.conf
/usr/local/php/etc/php.ini
mysql: /etc/my.cnf
下面开始安装
安装包 下载地址 http://pan.baidu.com/s/1sXpGj
Centos 6.5 64位CentOS-6.5-x86_64-minimal.iso最小化安装
关闭selinux SELINUX=disabled
shutdown -r now #不重启的话,更新ssh后下一次重启,ssh会启动失败
yum install -y gcc gcc-c++ vim wget lrzsz ntpdate sysstat vim-enhanced patch make flex bison file libtool libtool-libs autoconf libjpeg-devel libpng libpng-devel gd gd-devel freetype-devel libxml2 libxml2-devel zlib zlib-devel glib2 glib2-devel bzip2 bzip2-devel libevent libevent-devel ncurses ncurses-devel curl curl-devel e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel nano fonts-chinese gettext-devel gmp-devel pspell-devel unzip libcap apr* automake openssl openssl-devel perl compat* mpfr cpp glibc glibc-devel libgomp libstdc++-devel ppl cloog-ppl keyutils keyutils-libs-devel libcom_err-devel libsepol-devel krb5-devel libXpm* php-common php-gd pcre-devel libmcrypt-devel gd2 gd2-devel openldap*
rm -rf /etc/localtime
ln -s /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
ntpdate 0.asia.pool.ntp.org ;hwclock -w
cat >>/etc/security/limits.conf<<eof
* soft nproc 65535
* hard nproc 65535
* soft nofile 65535
* hard nofile 65535
eof
ulimit -SHn 65535
mkdir /data
cd /data/ #软件包都放此目录
编译安装MySQL5.6.19
安装cmake2.8.7 跨平台的安装(编译)工具
tar -zxf cmake-2.8.7.tar.gz
cd cmake-2.8.7
./configure
make&& make install
cd ..
编译安装mysql
1
2
3
4
5
|
/usr/sbin/groupadd mysql
/usr/sbin/useradd -g mysql mysql
mkdir -p /var/mysql/data
mkdir -p /var/mysql/log
chown -R mysql.mysql /var/mysql
|
tar zxf mysql-5.6.19.tar.gz
cd mysql-5.6.19
cmake -DCMAKE_BUILD_TYPE:STRING=Release -DMYSQL_USER=mysql -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_DATADIR=/var/mysql/data -DSYSCONFDIR=/etc -DWITH_MYISAM_STORAGE_ENGINE=1 -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_MEMORY_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_FEDERATED_STORAGE_ENGINE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DWITH_READLINE=1 -DMYSQL_UNIX_ADDR=/var/lib/mysql/mysql.sock -DMYSQL_TCP_PORT=3306 -DENABLED_LOCAL_INFILE=1 -DWITH_PARTITION_STORAGE_ENGINE=1 -DEXTRA_CHARSETS=all -DWITH_SSL=yes -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci
make -j4
make install
复制配置文件:
mv /etc/my.cnf /etc/my.cnf.bak
cp support-files/my-default.cnf /etc/my.cnf
vim +40 /etc/my.cnf
mysql5.6的配置文件可以参考下列几个
./mysql-test/include/default_mysqld.cnf
vim ./mysql-test/include/default_mysqld_autosize.cnf
默认的是./support-files/my-default.cnf
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
|
# vim /etc/my.cnf
[client]
port=3306
socket= /tmp/mysql .sock
[mysqld]
basedir = /usr/local/mysql
port=3306
socket= /tmp/mysql .sock
key_buffer_size=16M
max_allowed_packet=8M
datadir = /var/mysql/data
skip-name-resolve
lower_case_table_names = 1
character- set -server = utf8
log-error = /var/mysql/log/mysql-error .log
pid- file = /var/mysql/log/mysql .pid
general_log = 1
log_output=TABLE
log-bin= /var/mysql/log/mysql-bin
slow_query_log = ON
slow_query_log_file = /var/mysql/log/mysql_slow .log
server_id = 1
[mysqldump]
quick
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
|
复制启动脚本 :
1
2
3
4
5
|
cp . /support-files/mysql .server /etc/init .d /mysqld
chmod 755 /etc/init .d /mysqld
chkconfig --add mysqld
chkconfig mysqld on
cd ..
|
初始化数据库
1
2
3
4
5
6
|
/usr/local/mysql/scripts/mysql_install_db --user=mysql --datadir= /var/mysql/data --basedir= /usr/local/mysql --log-output= file
cat > /etc/ld .so.conf.d /mysql .conf<<EOF
/usr/local/mysql/lib/mysql
/usr/local/lib
EOF
ldconfig
|
编译安装php-5.5.14
编译安装所需组件
安装libiconv
1
2
3
4
5
6
|
tar zxf libiconv-1.14. tar .gz
cd libiconv-1.14
. /configure --prefix= /usr/local/libs
make
make install
cd ../
|
安装libmcrypt
1
2
3
4
5
6
7
8
9
10
11
|
tar zxf libmcrypt-2.5.8. tar .gz
cd libmcrypt-2.5.8/
. /configure --prefix= /usr/local/libs
make
make install
/sbin/ldconfig
cd libltdl/
. /configure -- enable -ltdl- install --prefix= /usr/local/libs
make
make install
cd ../../
|
安装mhash
1
2
3
4
5
6
|
tar xzf mhash-0.9.9. tar .gz
cd mhash-0.9.9
. /configure --prefix= /usr/local/libs
make
make install
cd ../
|
安装zlib
1
2
3
4
5
6
|
tar -zxf zlib-1.2.5. tar .gz
cd zlib-1.2.5
. /configure --prefix= /usr/local/libs
make
make install
cd ../
|
安装libpng
1
2
3
4
5
6
|
tar -zxf libpng-1.6.2. tar .gz
cd libpng-1.6.2
. /configure --prefix= /usr/local/libs
make
make install
cd ../
|
安装freetype
1
2
3
4
5
6
|
tar -zxf freetype-2.4.12. tar .gz
cd freetype-2.4.12
. /configure --prefix= /usr/local/libs
make
make install
cd ../
|
安装Jpeg
1
2
3
4
5
6
|
tar -zxf jpegsrc.v9. tar .gz
cd jpeg-9
. /configure --prefix= /usr/local/libs -- enable -shared -- enable -static
make
make install
cd ../
|
安装gettext
1
2
3
4
5
6
7
8
9
10
11
|
tar -zxf gettext-0.18.1.1. tar .gz
cd gettext-0.18.1.1
. /configure --prefix= /usr/local/libs
make
make install
cd ../
cat > /etc/ld .so.conf.d /local .conf << eof
/usr/local/libs/lib
/usr/local/lib
eof
ldconfig - v
|
安装mcrypt
1
2
3
4
5
6
7
8
9
|
tar zxf mcrypt-2.6.8. tar .gz
cd mcrypt-2.6.8/
export LDFLAGS= "-L/usr/local/libs/lib -L/usr/lib"
export CFLAGS= "-I/usr/local/libs/include -I/usr/include"
export LD_LIBRARY_PATH= /usr/local/libs/ : LD_LIBRARY_PATH
. /configure --prefix= /usr/local/libs --with-libmcrypt-prefix= /usr/local/libs
make
make install
cd ../
|
编译安装PHP(FastCGI模式)
cp -frp /usr/lib64/libldap* /usr/lib/
ln -s /usr/local/mysql/lib/libmysqlclient.so.18 /usr/lib64/
tar zxf php-5.5.14.tar.gz
cd php-5.5.14/
./configure --prefix=/usr/local/php --with-fpm-user=www --with-fpm-group=www --with-config-file-path=/usr/local/php/etc --with-openssl --with-curl --with-mysql=/usr/local/mysql --with-pdo-mysql=/usr/local/mysql --with-mysqli=mysqlnd --enable-mbstring=all --with-gd--with-freetype-dir=/usr/local/libs --with-jpeg-dir=/usr/local/libs --with-png-dir=/usr/local/libs --with-zlib-dir=/usr/local/libs --enable-mbstring --enable-sockets --with-iconv-dir=/usr/local/libs --enable-libxml --enable-soap --with-mcrypt=/usr/local/libs --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-mbregex --enable-fpm --enable-gd-native-ttf --with-mhash --enable-pcntl --with-ldap --with-ldap-sasl --with-xmlrpc --enable-zip --enable-phar --without-pear --enable-ftp--with-mysqli=/usr/local/mysql/bin/mysql_config --enable-maintainer-zts --disable-rpath --with-gettext --enable-opcache
make ZEND_EXTRA_LIBS='-liconv'
make install
1
2
3
4
5
6
7
8
|
ln -s /usr/local/php/bin/php /usr/bin/php
ln -s /usr/local/php/bin/phpize /usr/bin/phpize
ln -s /usr/local/php/sbin/php-fpm /usr/bin/php-fpm
cp php.ini-development /usr/local/php/etc/php .ini
cp /usr/local/php/etc/php-fpm .conf.default /usr/local/php/etc/php-fpm .conf
cp /data/php-5 .5.14 /sapi/fpm/init .d.php-fpm /etc/init .d /php-fpm
chmod +x /etc/init .d /php-fpm
|
cd ../
sed -i 's/;date\.timezone \=/date\.timezone \= Asia\/Shanghai/g' /usr/local/php/etc/php.ini
sed -i 's/expose_php = On/expose_php = Off/g' /usr/local/php/etc/php.ini
sed -i 's/disable_functions =.*/disable_functions =passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd,posix_getegid,posix_geteuid,posix_getgid,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid,posix_getppid,posix_getpwnam,posix_getpwuid,posix_getrlimit,posix_getsid,posix_getuid,posix_isatty,posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid,posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname/g' /usr/local/php/etc/php.ini
编译安装PHP扩展模块
安装pthreads扩展
1
2
3
4
5
6
7
|
unzip pthreads-master.zip
cd pthreads-master
/usr/local/php/bin/phpize
. /configure --with-php-config= /usr/local/php/bin/php-config
make
make install
cd ..
|
安装memcache扩展
1
2
3
4
5
6
7
|
tar -xzf memcache-2.2.7.tgz
cd memcache-2.2.7
/usr/local/php/bin/phpize
. /configure --with-php-config= /usr/local/php/bin/php-config
make
make install
cd ..
|
安装imagick扩展
1
2
3
4
5
6
7
8
9
10
11
12
|
tar zxf ImageMagick-6.8.8-9. tar .gz
cd ImageMagick-6.8.8-9/
. /configure --prefix= /usr/local/imagemagick
make && make install
cd ..
tar -xzf imagick-3.1.2.tgz
cd imagick-3.1.2
/usr/local/php/bin/phpize
. /configure --with-php-config= /usr/local/php/bin/php-config --with-imagick= /usr/local/imagemagick
make
make install
cd ..
|
安装IMAP的PHP扩展
1
2
3
4
5
6
7
8
|
yum install libc-client.x86_64 libc-client-devel.x86_64 -y
cp /usr/lib64/libc-client .so* /usr/lib
cd php-5.5.14 /ext/imap/
phpize
. /configure --with-php-config= /usr/local/php/bin/php-config --with-imap --with-imap-ssl --with-kerberos
make
make install
cd /data
|
安装phpredis扩展
1
2
3
4
5
6
7
|
unzip phpredis-master.zip
cd phpredis-master
/usr/local/php/bin/phpize
. /configure --with-php-config= /usr/local/php/bin/php-config
make
make install
cd /data
|
安装mongo扩展
1
2
3
4
5
6
7
|
tar -xzf mongo-1.5.4.tgz
cd mongo-1.5.4
/usr/local/php/bin/phpize
. /configure --with-php-config= /usr/local/php/bin/php-config --prefix= /usr/local/mongo
make
make install
cd /data
|
vim/usr/local/php/etc/php.ini
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-zts-20121212/"
extension = "pthreads.so"
extension = "redis.so"
extension = "imap.so"
extension = "memcache.so"
extension = "imagick.so"
extension = "mongo.so"
zend_extension =/usr/local/php/lib/php/extensions/no-debug-zts-20121212/opcache.so
opcache.memory_consumption=128
opcache.interned_strings_buffer=8
opcache.max_accelerated_files=4000
opcache.revalidate_freq=60
opcache.fast_shutdown=1
opcache.enable_cli=1
安装Nginx
tar -zxf pcre-8.35.tar.gz
cd pcre-8.35
./configure --prefix=/usr/local/pcre
make&&make install
cd ../
groupadd www
useradd -g www www -s /sbin/nologin
tar -xzf nginx-1.6.0.tar.gz
cd nginx-1.6.0/
./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-pcre=/data/pcre-8.35 --with-http_realip_module --with-http_image_filter_module
#这里注意--with-pcre=path 是pcre解压的目录,而不是安装后的目录
make
make install
cd ../
wget -c http://soft.vpser.net/lnmp/ext/init.d.nginx
cp init.d.nginx /etc/init.d/nginx
chmod +x /etc/init.d/nginx
创建Nginx日志目录
mkdir -p /data/nginx/logs
chmod +w /data/nginx/logs
chown -R www:www /data/nginx/logs
修改nginx配置文件
修改nginx.conf文件:
mv /usr/local/nginx/conf/nginx.conf /usr/local/nginx/conf/nginx.conf.bak
vim /usr/local/nginx/conf/nginx.conf
user www www;
worker_processes auto;
error_log /var/log/nginx/nginx_error.log error;
pid /var/run/nginx.pid;
worker_rlimit_nofile 102400;
events {
use epoll;
worker_connections 102400;
multi_accept on;
}
http {
include mime.types;
default_type application/octet-stream;
server_names_hash_bucket_size 128;
client_header_buffer_size 32k;
large_client_header_buffers 4 32k;
client_max_body_size 8m;
client_header_timeout 10;
client_body_timeout 10;
reset_timedout_connection on;
send_timeout 10;
sendfile on;
tcp_nopush on;
keepalive_timeout 10;
tcp_nodelay on;
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 64k;
fastcgi_buffers 4 64k;
fastcgi_busy_buffers_size 128k;
fastcgi_temp_file_write_size 256k;
limit_conn_zone $binary_remote_addr zone=addr:5m;
limit_conn addr 100;
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_http_version 1.0;
gzip_comp_level 2;
gzip_types text/plain application/x-javascripttext/css application/xml;
gzip_vary on;
gzip_proxied expired no-cache no-store private auth;
gzip_disable "MSIE [1-6]\.";
open_file_cache max=102400 inactive=30s;
open_file_cache_valid 90s;
open_file_cache_min_uses 2;
open_file_cache_errors on;
server_tokens off;
log_format access '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" $http_x_forwarded_for';
log_not_found off;
fastcgi_intercept_errors on;
include /usr/local/nginx/conf/server/*.conf;
}
vim /usr/local/nginx/conf/server/test.conf
server {
listen 80;
server_name test.com;
index index.php index.html index.htm;
root /var/www/test.com;
access_log /data/log/nginx/test.log access;
error_page 404 = /404.html;
# redirect server error pages to the static page /50x.html
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
location ~ .*\.(php|php5)?$ {
try_files $uri =404;
# fastcgi_pass 127.0.0.1:9000;
fastcgi_pass unix:/tmp/php-cgi.sock;
fastcgi_index index.php;
include fastcgi.conf;
}
location ~* \.(sql|bak|svn|old)$ {
return 403;
}
location ~.*\.(gif|jpg|jpeg|png|bmp|swf)$ {
expires 7d;
}
location ~ .*\.(js|css)?$ {
expires 12h;
}
if ( $fastcgi_script_name ~ \..*\/.*php ) {
return 403;
}
#重定向在此添加
}
cp /usr/local/nginx/conf/fastcgi.conf /usr/local/nginx/conf/fcgi.conf
mkdir /var/www/
cat > /var/www/phpinfo.php << eof
<?php
phpinfo();
?>
eof
创建php-fpm配置文件
mv /usr/local/php/etc/php-fpm.conf /usr/local/php/etc/php-fpm.conf.bak
vim /usr/local/php/etc/php-fpm.conf
[global]
pid = /usr/local/php/var/run/php-fpm.pid
error_log = /usr/local/php/var/log/php-fpm.log
log_level = error
[www]
listen = /tmp/php-cgi.sock
;listen = 127.0.0.1:9000
user = www
group = www
listen.mode = 0666
;pm = dynamic
pm = static
pm.max_children = 30
pm.start_servers = 5
pm.min_spare_servers = 5
pm.max_spare_servers = 30
request_terminate_timeout = 60
request_slowlog_timeout = 60s
slowlog = /var/log/php-fpm.log.slow
pm.max_requests = 1024
phpinfo测试页面在附件里面,可以先查看 请把phpinfo().htm.txt改为phpinfo().htm
附件:http://down.51cto.com/data/2364638
生产环境Centos LNMP编译安装nginx-1.6 MySQL-5.6 php-5.5相关推荐
- Centos 7编译安装Nginx
Centos 7编译安装Nginx 第一步:防火墙开启80端口或关闭防火墙 第二步:下载Nginx的压缩包 第三步:安装Nginx所需要的环境 第四步:解压Nginx的压缩包 第五步:配置Nginx ...
- nginx 怎么重新编译安装mysql,centos 下 编译安装 nginx + mysql + php 服务
centos 下编译安装nginx + mysql + php 服务 1.安装nginx 1.1.安装依赖包 yum install wget make gcc gcc-c++ pcre-devel ...
- RHEL/CentOS下编译安装Nginx
##下载nginx源码: wget http://nginx.org/download/nginx-1.7.8.tar.gz tar -xv -f nginx-1.7.8.tar.gz -C /usr ...
- CentOS上编译安装Nginx
背景 为了解决CentOS7.2自带的Nginx上没有auth-request支持的问题,需要自己手工编译安装Nginx . 安装依赖 更新yum yum update -y yum -y insta ...
- 在Centos上编译安装nginx
实验环境: OS: CentOS 6.6 nginx:nginx-1.6.2.tar.gz 前期准备: 安装开发包组件 [root@1inux tmp]# yum -y groupinstall &q ...
- CentOS 7.5 编译安装 Nginx 1.15.3
本文主要记录如何在CentOS 7.5中编译安装Nginx官方最新的1.15.3版本.由于像Nginx.Mysql和PHP的的源码都是用C/C++写的,所以自己的CentOS 7.5服务器上必须要安装 ...
- CentOS 6下编译安装Nginx
CentOS 6下编译安装Nginx By:老宁 一.准备make环境 yum -y install gcc gcc-c++ automake autoconf libtool make 二.准备 ...
- nginx如何编译安装mysql_centos系统编译安装nginx+php环境另加独立mysql教程
以前看过的安装nginx+php环境都带了mysql数据库了,这个是因为很多站长都是nginx+php+mysql都在同一台服务器了,那么今天我们是单独处理了,一个是nginx+php环境,然后mys ...
- docker使用centos镜像,编译安装nginx,并上传镜像
docker使用centos镜像,编译安装nginx 1. 拉取镜像 2. 运行centos容器 3. 安装依赖包 4. 下载nginx的tar包 5. 解压nginx的tar包 6. 创建nginx ...
最新文章
- 博士申请 | 美国布兰迪斯大学张初旭教授招收机器学习方向全奖博士生
- Found option without preceding group
- spring-boot基础概念与简单应用
- Nsight 调试 Caffe
- ios多线程 -- NSOperation 简介
- 什么时候用synchronized
- FutureTask isDone 返回 false
- 配置u-boot的ip、网卡ip的命令
- 给本地Git配置账号信息
- Premiere Pro CC2017软件安装资料及教程
- 制作一款游戏这么简单
- Netdata监控安装(汉化)
- 字幕基础:字幕介绍、字幕种类及常见格式(转)
- 敏捷仪式感之:敏捷宣传栏
- python 十进制转二进制
- Liunx yun 安装 mysql5.7
- 如何使用计算机蠕虫病毒软件,incaseformat蠕虫病毒是什么?电脑若中病毒后如何修复。...
- idea通过Git版本控制时贮藏功能的使用
- C语言strstr()函数使用注意事项
- 悟空号 量子计算机,悟空号获得世界上最精确的TeV电子宇宙射线能谱
热门文章
- 科拉茨猜想c语言编写,辽宁省沈阳市第一七O中学2019-2020学年高二数学上学期阶段性测试试题(2)文...
- 大恒相机Python版Qt界面(一)
- 中兴交换机如何查看服务器设备,中兴交换机配置流程和配置命令(参考模板)...
- error: cannot lock ref 'refs/remotes/origin/master': unable to resolve reference 'refs/remotes/origi
- 8月第四周回顾:四核产品将发口角先起 AMD遭遇跳票流言
- 新年礼品选超人气MID口袋电脑,不错的选择!
- 国产linux凝思4.2系统多网卡指定路由配置
- 预测不了世界杯比分,就预测百威啤酒销量,送数据竞赛冠军笔记
- 魅族 刷机android 6.0,乐视X900+安卓6.0 魅族Flyme6刷机包 最新6.7.12.29R付费纯净版
- 10g gtx 光纤通信测试_10G光模块知识问与答