Centos6.5生成环境配置--nginx1.9 + PHP+可多个tomcat(多个端口)+多域名+java web 负载均衡
安装n p
- 参考:
- CentOS6.5搭建LNMP
- http://www.cnblogs.com/xiaoit/p/3991037.html
- http://blog.csdn.net/keyunq/article/details/45129859
- http://www.thinkphp.cn/code/992.html
实战Nginx与PHP(FastCGI)的安装、配置与优化
http://ixdba.blog.51cto.com/2895551/806622/- CentOS .6编译安装Nginx1.6.2+MySQL5.6.21+PHP5.6.3
- http://www.osyunwei.com/archives/8867.html
一.安装编译工具及库文件
- yum install -y apr* autoconf automake bison bzip2 bzip2* cloog-ppl compat* cpp curl curl-devel fontconfig fontconfig-devel freetype freetype* freetype-devel gcc gcc-c++ gtk+-devel gd gettext gettext-devel glibc kernel kernel-headers keyutils keyutils-libs-devel krb5-devel libcom_err-devel libpng libpng* libpng-devel libjpeg* libsepol-devel libselinux-devel libstdc++-devel libtool* libgomp libxml2 libxml2-devel libXpm* libX* libtiff libtiff* make mpfr ncurses* ntp openssl nasm nasm* openssl-devel patch pcre-devel perl php-common php-gd policycoreutils ppl telnet t1lib t1lib* wget zlib-devel
二.安装 nginx
1、安装pcre (nginx扩展)
- cd /usr/local/src
- mkdir /usr/local/pcre
- tar zxvf pcre-8.38.tar.gz
- cd pcre-8.38
- ./configure --prefix=/usr/local/pcre838
- make
- make install
2、安装openssl (nginx扩展)
- cd /usr/local/src
- mkdir /usr/local/openssl
- tar zxvf openssl-1.0.2h.tar.gz
- cd openssl-1.0.2h
- ./config --prefix=/usr/local/openssl102h
- make
- make install
- vi /etc/profile
- export PATH=$PATH:/usr/local/openssl102h/bin
- :wq!
- source /etc/profile
3、安装zlib (nginx扩展)
- cd /usr/local/src
- mkdir /usr/local/zlib
- tar zxvf zlib-1.2..tar.gz
- cd zlib-1.2.
- ./configure --prefix=/usr/local/zlib
- make
- make install
4、安装Nginx
- groupadd www
- useradd -g www www -s /bin/false
- cd /usr/local/src
- ./configure --prefix=/usr/local/nginx --without-http_memcached_module --user=www --group=www --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-openssl=/usr/local/src/openssl-1.0.2h --with-zlib=/usr/local/src/zlib-1.2. --with-pcre=/usr/local/src/prcre838
make
make install
/usr/local/nginx/sbin/nginx #启动Nginx
注意编译的配置路径.
设置nginx开机启动
vi /etc/rc.d/init.d/nginx #编辑启动文件添加下面内容
############################################################
- #!/bin/sh
- #
- # nginx - this script starts and stops the nginx daemon
- #
- # chkconfig: -
- # description: Nginx is an HTTP(S) server, HTTP(S) reverse \
- # proxy and IMAP/POP3 proxy server
- # processname: nginx
- # config: /etc/nginx/nginx.conf
- # config: /usr/local/nginx/conf/nginx.conf
- # pidfile: /usr/local/nginx/logs/nginx.pid
- # Source function library.
- . /etc/rc.d/init.d/functions
- # Source networking configuration.
- . /etc/sysconfig/network
- # Check that networking is up.
- [ "$NETWORKING" = "no" ] && exit
- nginx="/usr/local/nginx/sbin/nginx"
- prog=$(basename $nginx)
- NGINX_CONF_FILE="/usr/local/nginx/conf/nginx.conf"
- [ -f /etc/sysconfig/nginx ] && . /etc/sysconfig/nginx
- lockfile=/var/lock/subsys/nginx
- make_dirs() {
- # make required directories
- user=`$nginx -V >& | grep "configure arguments:" | sed 's/[^*]*--user=\([^ ]*\).*/\1/g' -`
- if [ -z "`grep $user /etc/passwd`" ]; then
- useradd -M -s /bin/nologin $user
- fi
- options=`$nginx -V >& | grep 'configure arguments:'`
- for opt in $options; do
- if [ `echo $opt | grep '.*-temp-path'` ]; then
- value=`echo $opt | cut -d "=" -f `
- if [ ! -d "$value" ]; then
- # echo "creating" $value
- mkdir -p $value && chown -R $user $value
- fi
- fi
- done
- }
- start() {
- [ -x $nginx ] || exit
- [ -f $NGINX_CONF_FILE ] || exit
- make_dirs
- echo -n $"Starting $prog: "
- daemon $nginx -c $NGINX_CONF_FILE
- retval=$?
- echo
- [ $retval -eq ] && touch $lockfile
- return $retval
- }
- stop() {
- echo -n $"Stopping $prog: "
- killproc $prog -QUIT
- retval=$?
- echo
- [ $retval -eq ] && rm -f $lockfile
- return $retval
- }
- restart() {
- #configtest || return $?
- stop
- sleep
- start
- }
- reload() {
- #configtest || return $?
- echo -n $"Reloading $prog: "
- killproc $nginx -HUP
- RETVAL=$?
- echo
- }
- force_reload() {
- restart
- }
- configtest() {
- $nginx -t -c $NGINX_CONF_FILE
- }
- rh_status() {
- status $prog
- }
- rh_status_q() {
- rh_status >/dev/null >&
- }
- case "$1" in
- start)
- rh_status_q && exit
- $
- ;;
- stop)
- rh_status_q || exit
- $
- ;;
- restart|configtest)
- $
- ;;
- reload)
- rh_status_q || exit
- $
- ;;
- force-reload)
- force_reload
- ;;
- status)
- rh_status
- ;;
- condrestart|try-restart)
- rh_status_q || exit
- ;;
- *)
- echo $"Usage: $0 {start|stop|status|restart|condrestart|try-restart|reload|force-reload|configtest}"
- exit
- esac
chmod 775 /etc/rc.d/init.d/nginx #赋予文件执行权限
chkconfig nginx on #设置开机启动
/etc/rc.d/init.d/nginx restart #重启
三、安装 php环境
安装依赖库文件
- 、安装yasm
- cd /usr/local/src
- tar zxvf yasm-1.3..tar.gz
- cd yasm-1.3.
- ./configure
- make
- make install
- 、安装libmcrypt
- cd /usr/local/src
- tar zxvf libmcrypt-2.5..tar.gz
- cd libmcrypt-2.5.
- ./configure
- make
- make install
- 、安装libvpx
- cd /usr/local/src
- tar xvf libvpx-v1.3.0.tar.bz2
- cd libvpx-v1.3.0
- ./configure --prefix=/usr/local/libvpx --enable-shared --enable-vp9
- make
- make install
- 、安装tiff
- cd /usr/local/src
- tar zxvf tiff-4.0..tar.gz
- cd tiff-4.0.
- ./configure --prefix=/usr/local/tiff --enable-shared
- make
- make install
- 、安装libpng
- cd /usr/local/src
- tar zxvf libpng-1.6..tar.gz
- cd libpng-1.6.
- ./configure --prefix=/usr/local/libpng --enable-shared
- make
- make install
- 、安装freetype
- cd /usr/local/src
- tar zxvf freetype-2.5..tar.gz
- cd freetype-2.5.
- ./configure --prefix=/usr/local/freetype --enable-shared
- make #编译
- make install #安装
- 、安装jpeg
- cd /usr/local/src
- tar zxvf jpegsrc.v9a.tar.gz
- cd jpeg-9a
- ./configure --prefix=/usr/local/jpeg --enable-shared
- make #编译
- make install #安装
- 、安装libgd
- cd /usr/local/src
- tar zxvf libgd-2.1..tar.gz #解压
- cd libgd-2.1. #进入目录
- ./configure --prefix=/usr/local/libgd --enable-shared --with-jpeg=/usr/local/jpeg --with-png=/usr/local/libpng --with-freetype=/usr/local/freetype --with-fontconfig=/usr/local/freetype --with-xpm=/usr/ --with-tiff=/usr/local/tiff --with-vpx=/usr/local/libvpx #配置
- make #编译
- make install #安装
- 、安装t1lib
- cd /usr/local/src
- tar zxvf t1lib-5.1..tar.gz
- cd t1lib-5.1.
- ./configure --prefix=/usr/local/t1lib --enable-shared
- make without_doc
- make install
安装php
注意:如果系统是64位,请执行以下两条命令,否则安装php会出错(32位系统不需要执行)
\cp -frp /usr/lib64/libltdl.so* /usr/lib/
\cp -frp /usr/lib64/libXpm.so* /usr/lib/
cd /usr/local/src
tar -zvxf php-5.6.3.tar.gz
cd php-5.6.3
export LD_LIBRARY_PATH=/usr/local/libgd/lib
- ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysql --with-mysqli --with-mysql-sock=/tmp/mysql.sock --with-pdo-mysql --with-gd --with-png-dir=/usr/local/libpng --with-jpeg-dir=/usr/local/jpeg --with-freetype-dir=/usr/local/freetype --with-xpm-dir=/usr/ --with-vpx-dir=/usr/local/libvpx/ --with-zlib-dir=/usr/local/zlib --with-t1lib=/usr/local/t1lib --with-iconv --enable-libxml --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-opcache --enable-mbregex --enable-fpm --enable-mbstring --enable-ftp --enable-gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-mcrypt --with-curl --enable-ctype
注意编译支持的参数
#此生产环境没有安装mysql数据库系统,编译安装的过程中若出现错误,需要安装相应的依赖。
make #编译
make install #安装
cp php.ini-production /usr/local/php/etc/php.ini #复制php配置文件到安装目录
配置php
- rm -rf /etc/php.ini #删除系统自带配置文件
- ln -s /usr/local/php/etc/php.ini /etc/php.ini #添加软链接到 /etc目录
- cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf #拷贝模板文件为php-fpm配置文件
- ln -s /usr/local/php/etc/php-fpm.conf /etc/php-fpm.conf #添加软连接到 /etc目录
配置php-fpm
- vi /usr/local/php/etc/php-fpm.conf #编辑
- user = www #设置php-fpm运行账号为www
- group = www #设置php-fpm运行组为www
- pid = run/php-fpm.pid #取消前面的分号
- :wq! #保存退出
设置 php-fpm开机启动
- cp /usr/local/src/php-5.6./sapi/fpm/init.d.php-fpm /etc/rc.d/init.d/php-fpm #拷贝php-fpm到启动目录
- chmod +x /etc/rc.d/init.d/php-fpm #添加执行权限
- chkconfig php-fpm on #设置开机启动
编辑配置文件
- vi /usr/local/php/etc/php.ini #编辑配置文件
#列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。- 找到:disable_functions =
- 修改为:disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,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
找到:;date.timezone =
修改为:date.timezone = PRC #设置时区
找到:expose_php = On
修改为:expose_php = Off #禁止显示php版本的信息
找到:short_open_tag = Off
修改为:short_open_tag = ON #支持php短标签
找到opcache.enable=0
修改为opcache.enable=1 #php支持opcode缓存
找到:;opcache.enable_cli=1 #php支持opcode缓存
修改为:opcache.enable_cli=0
在最后一行添加:zend_extension=opcache.so #开启opcode缓存功能
配置Nginx支持PHP
- vi /usr/local/nginx/conf/nginx.conf #配置修改
- user www www; #首行user去掉注释,修改Nginx运行组为www www;必须与/usr/local/php/etc/php-fpm.conf中的user,group配置相同,否则php运行出错
- index index.html index.htm index.php; #添加index.php
- # pass the PHP scripts to FastCGI server listening on 127.0.0.1:
- #
- location ~ \.php$ {
- root html;
- fastcgi_pass 127.0.0.1:;
- fastcgi_index index.php;
- fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
- include fastcgi_params;
- }
- #取消FastCGI server部分location的注释,注意fastcgi_param行的参数,改为$document_root$fastcgi_script_name,或者使用绝对路径
- /etc/init.d/nginx restart #重启nginx
- service php-fpm start #启动php-fpm
- 测试篇
- cd /usr/local/nginx/html/ #进入nginx默认网站根目录
- rm -rf /usr/local/nginx/html/* #删除默认测试页
- vi index.php #新建index.php文件
- <?php
- phpinfo();
- ?>
- :wq! #保存退出
- chown www.www /usr/local/nginx/html/ -R #设置目录所有者
- chmod 700 /usr/local/nginx/html/ -R #设置目录权限
Centos6.5生成环境配置--nginx1.9 + PHP+可多个tomcat(多个端口)+多域名+java web 负载均衡的更多相关文章
- 搭建nginx+tomcat+Java的负载均衡环境
转载 未测 供参考 另外这篇文章也不错.http://blog.csdn.net/wang379275614/article/details/47778201 一.简介: Tomcat在高并发环境下 ...
- 【转】搭建nginx+tomcat+Java的负载均衡环境
一.简介: Tomcat在高并发环境下处理动态请求时性能很低,而在处理静态页面更加脆弱.虽然Tomcat的最新版本支持epoll,但是通过Nginx来处理静态页面要比通过Tomcat处理在性能方面好很 ...
- apache配置weblogic部署集群,多节点的项目和单节点项目并存 负载均衡
开启模块如下: LoadModule weblogic_module modules/mod_wl_22.so LoadModule lbmethod_byrequests_module module ...
- 2506-nginx的配置-域名分发与负载均衡(只有配置无原理)
nginx的安装 Windows7:官网下载,是一个压缩包,运行解压缩后的exe文件即启动了nginx,需注意的是,Windows(win7)的80端口默认被微软的IIS占用,需改成别的端口,例如80 ...
- CentOS6.9 Python环境配置(python2.7、pip、virtualenv)
python2.7 yum install -y zlib zlib-devel openssl openssl-devel mysql-devel gcc gcc-c++ wget https:// ...
- Redis学习(1)--环境配置,安装JDK,MySQL,tomcat
Linux上安装jdk,mysql,tomcat安装 rpm命令: 相当于Windows的安装/卸载程序.可以进行程序的安装,更新,卸载,查看. 本地程序安装:rpm -ivh 程序名 本地程序查看: ...
- Eclipse 4.2 + Tomcat 7.x + JDK 7 搭建Java Web开发环境
1. 准备工具 Eclipse 4.2 (到官网下载:http://www.eclipse.org/downloads/ 要下载Eclipse IDE for Java EE Developers ...
- CentOS 7.3 环境配置java和tomcat开机启动
Centos7下添加开机自启动服务和脚本 https://blog.csdn.net/GMingZhou/article/details/78677953 安装部分参考我的博文,仅参考他的开机启动部 ...
- Libgdx游戏学习(1)——环境配置及demo运行
原文: Libgdx游戏学习(1)--环境配置及demo运行 - Stars-One的杂货小窝 Libgdx游戏是基于Java的一款游戏引擎,可以发布Android,桌面端,Html,IOS等游戏,出 ...
随机推荐
- android蓝牙开发---与蓝牙模块进行通信
近半个月来一直在搞android蓝牙这方面,主要是项目需要与蓝牙模块进行通信.开头的进展很顺利,但因为蓝牙模块不在我这里,所以只能用手机测试.一开头就发现手机的蓝牙不能用,为了证明这点,我刷了四次不同 ...
- “21天教你学会C++”
下面是一个<Teach Yourself C++ in 21 Days>的流程图,请各位程序员同仁认真领会.如果有必要,你可以查看这个图书以作参照:http://www.china-pu ...
- 一个酷绚的linux 桌面程序 GLX-DOCK (cario-dock)
记录一个酷绚的linux 桌面程序 GLX-DOCK (cario-dock),支持多种风格的桌面主题. http://glx-dock.org/ 优势: 多个workspaces 方便自由切换 ...
- FreeSWITCH快速录音
一.背景 测试人员反映FreeSWITCH录音不及时,需要大约5秒的时间才能捕获到RTP流. 二.原因及解决 查了下资料,FreeSWITCH默认的录音参数配置是开启缓冲的, 即RTP流大小到达655 ...
- 用SQL语句将远程SQL Server数据库中表数据导入到本地数据库相应的表中
一.方法一 访问不同电脑上的数据库(远程访问,只好联好网就一样),如果经常访问或数据量较大,建议用链接服务器方法. 1.创建链接服务器 exec sp_addlinkedserver ‘srv_lnk ...
- Android NDK r9的配置与使用
Android NDK 配置: 网上有很多教程,但大部分是旧版本的内容,最新版本的已经改变,为了让大家少走弯路,在这里针对r9的配置进行记录分享. 要玩NDK,你或多或少要用到以下一些东西,所以先做一 ...
- [转]Java 变量和常量
变量和常量 在程序中存在大量的数据来代表程序的状态,其中有些数据在程序的运行过程中值会发生改变,有些数据在程序运行过程中值不能发生改变,这些数据在程序中分别被叫做变量和常量. 在实际的程序中,可以根据 ...
- 温故而知新 Ajax 的新坑 dataType: 'json'
为了方便实验,我随便捏造了一个json数据,然后放在php中输出. 请求明明是200,json数据也正确,但ajax就是不执行success回调? 原因是 dataType: 'json', 导致的. ...
- mac 安装配置java环境变量
1.下载java 地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html 2.选择 ...
- Jenkins管理静态资源
这里我们的前端是使用webpack来管理静态资源的,把静态资源上传到svn上面来管理 这里我们把项目和静态资源剥离开来,然后静态资源接入CDN 我们的svn的结构是这样的 我们需要把这些目录都进行打包 ...