Liunx下Tomcat+MYSQL+Nginx配置
环境:centos6.4 min
#安装编译库及依赖模块
yum -y install gcc gcc-c++ autoconf automake make
yum -y install zlib zlib-devel openssl openssl--devel pcre pcre-devel
#上传需要的软件
#安装JDK与Tomcat
查看当系统JDK版本 java –version
#修改权限
chmod 777 jdk-6u41-linux-i586-rpm.bin
./jdk-6u41-linux-i586-rpm.bin
#可以不加
vi /etc/profile
#加入
JAVA_HOME=/usr/java/jdk1.6.0_41
CLASSPATH=.:JAVAHOME/libPATH=JAVA_HOME/bin:$PATH
export JAVA_HOME CLASSPATH PATH
#保存退出
:wq
#解压Tomcat
tar zxvf apache-tomcat-6.0.36.tar.gz
#安装Mysql
#是否已经安装了mysql数据库
rpm -qa | grep mysql
#卸载Mysql
rpm -e mysql
rpm -e --nodeps mysql
#可下载的版本
yum list | grep mysql
#安装Mysql
yum install -y mysql-server mysql mysql-deve
#查看
rpm -qi mysql-server
#启动mysql服务 首先会初始化配置
service mysqld start
#重启Mysql的服务
service mysqld restart
#开机自动启动
chkconfig --list | grep mysqld
chkconfig mysqld on
#为root账号设置密码
mysqladmin -u root password '123'
#登录Mysql
mysql -u root -p
show databases;
#查看配置
cat /etc/my.cnf
#数据库存放位置
cd /var/lib/mysql/
#mysql数据库日志
cat /var/log/mysqld.log
#查看端口
netstat –anp
#Mysql编码问题
#MySQL数据库默认的编码
character set :latin1
collation : latin1_swedish_ci
#查看当前编码
SHOW VARIABLES LIKE 'character_set%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+
#查看MySQL支持的编码
mysql> show character set;
#修改编码
vi /etc/my.cnf
[client]
default-character-set=utf8
[mysql]
default-character-set=utf8
[mysqld]
default-character-set = utf8
collation-server = utf8_unicode_ci
init-connect='SET NAMES utf8'
character-set-server = utf8
aaarticlea/png;base64,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" alt="" width="455" height="380" />
找到[mysqld]下增加(未测试)
CentOS 5之前版本
character-set-server=utf8
CentOS 6以上的版本
character-set-server=utf8
#修改一个已有数据库的编码
ALTER DATABASE linuxcast CHARACTER SET utf8 COLLATE utf8_general_ci;
#创建数据库的时候指定编码
CREATE DATABASE testDB
DEFAULT CHARACTER SET utf8
DEFAULT COLLATE utf8_general_ci;
#查看编码
aaarticlea/png;base64,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" alt="" />
#重启MySQL服务
service mysqld restart
#防火墙端口
iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT
service iptables save
service iptables restart
service iptables stop
#设置mysql远程访问
mysql -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'passwd' WITH GRANT OPTION;
flush privileges;
#安装Nginx
yum install wget
cd /opt
wget http://nginx.org/download/nginx-1.2.8.tar.gz
tar zxvf nginx-1.2.8.tar.gz
cd nginx-1.2.8
./configure --prefix=/opt/nginx --with-http_stub_status_module --with-http_gzip_static_module --with-http_ssl_module
make && make install
配置参数:
--prefix=path 定义服务器保存文件的目录,默认为/usr/local/nginx
--sbin-path=path nginx执行文件名,默认为prefix/sbin/nginx
--conf-path=path 设置nginx.conf配置文件名,默认为prefix/conf/nginx.conf
--pid-path=path 设置nginx.pid文件名,它用来保存nginx主进程的进程ID,默认为prefix/logs/nginx.pid
--error-log-path=path 设置错误日志文件名,默认为prefix/logs/error.log
--http-log-path=path 设置HTTP请求日志文件名,默认为prefix/logs/access.log
--user-name=path 设置未授权用户名,默认为nobody
--group=name 设置组名,默认为未授权用户名
--with-select_module 编译或取消编译利用select()方法的模块
--with-poll_module 编译或取消编译利用poll()方法的模块
--without-http_gzip_module 取消编译HTTP服务器压缩响应的模块,需要zlip库
--without-http_rewrite_module 取消编译HTTP服务器重定向请求或修改请求URI地址的模块,需要PCRE库
--without-http_proxy_module 取消编译HTTP服务器代理模块
--with-http_ssl_module 编译添加对HTTPS协议的支持,需要OpenSSL库
--with-pcre=path 设置PCRE库的源代码路径,下载PCRE源码后解压缩到指定的path即可,剩下的交给nginx的./configure和make命令完成
--with-pcre-jit 编译PCRE库支持及时编译
--with-zlib=path 设置zlib库源代码的路径,同样下载zlib源码后解压到指定的path即可
--with-cc-opt=parameters 设置CFLAGS变量的额外参数
--with-ld-opt=parameters 设置链接时的额外参数--with-openssl=/usr/include #启用ssl
--with-pcre=/usr/include/pcre/ #启用正规表达式
--with-http_stub_status_module #安装可以查看nginx状态的程序
--with-http_memcached_module #启用memcache缓存
--with-http_rewrite_module #启用支持url重写===================================================================================
./configure \
--user=nginx \
--group=nginx \
--prefix=/usr/share \
--sbin-path=/usr/sbin/nginx \
--conf-path=/etc/nginx/nginx.conf \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--pid-path=/var/log/run/nginx.pid \
--lock-path=/var/log/lock/subsys/nginx \
--with-http_ssl_module \
--with-http_realip_module \
--with-http_addition_module \
--with-http_sub_module \
--with-http_dav_module \
--with-http_flv_module \
--with-http_gzip_static_module \
--with-http_stub_status_module \
--with-http_perl_module \
--with-mail \
--with-mail_ssl_module
make
make install
编译选项参考:http://wiki.nginx.org/NginxInstallOptions
#iptables配置
vi /etc/sysconfig/iptables
#添加配置项
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 8080 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
特别提示:正确的应该是添加到默认的22端口这条规则的下面
#重启防火墙
/etc/rc.d/init.d/iptables restart 或 service iptables restart
#查看现在的防火墙设置
iptables -L -n 或/etc/init.d/iptables status
#关闭防火墙
/etc/init.d/iptables stop
#停止关闭
#查询nginx主进程号
ps -ef | grep nginx
#停止进程
kill -QUIT 主进程号
#快速停止
kill -TERM 主进程号
#强制停止
kill -9 nginx
#Nginx
#端口查看
netstat –na|grep 80
#测试配置文件是否有错误
/opt/nginx/sbin/nginx –t
#重新加载配置
/opt/nginx/sbin/nginx -s reload
#启动nginx
/opt/nginx/sbin/nginx
#停止nginx
/opt/nginx/sbin/nginx –s stop
#Nginx配置
#默认配置
#user nobody;
worker_processes 1; #error_log logs/error.log;
#error_log logs/error.log notice;
#error_log logs/error.log info;
#pid logs/nginx.pid;
events {
worker_connections 1024;
} http {
include mime.types;
default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"'; #access_log logs/access.log main; sendfile on;
#tcp_nopush on; #keepalive_timeout 0;
keepalive_timeout 65; #gzip on; server {
listen 80;
server_name localhost; #charset koi8-r; #access_log logs/host.access.log main; location / {
root html;
index index.html index.htm;
} #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;
} # proxy the PHP scripts to Apache listening on 127.0.0.1:80
#
#location ~ \.php$ {
# proxy_pass http://127.0.0.1;
#} # pass the PHP scripts to FastCGI server listening on 127.0.0.1:9000
#
#location ~ \.php$ {
# root html;
# fastcgi_pass 127.0.0.1:9000;
# fastcgi_index index.php;
# fastcgi_param SCRIPT_FILENAME /scripts$fastcgi_script_name;
# include fastcgi_params;
#} # deny access to .htaccess files, if Apache's document root
# concurs with nginx's one
#
#location ~ /\.ht {
# deny all;
#}
} # another virtual host using mix of IP-, name-, and port-based configuration
#
#server {
# listen 8000;
# listen somename:8080;
# server_name somename alias another.alias; # location / {
# root html;
# index index.html index.htm;
# }
#} # HTTPS server
#
#server {
# listen 443;
# server_name localhost; # ssl on;
# ssl_certificate cert.pem;
# ssl_certificate_key cert.key; # ssl_session_timeout 5m; # ssl_protocols SSLv2 SSLv3 TLSv1;
# ssl_ciphers HIGH:!aNULL:!MD5;
# ssl_prefer_server_ciphers on; # location / {
# root html;
# index index.html index.htm;
# }
#} }
#Tomcat部署springmvc测试项目
上传项目到/opt目录下,新建ROOT.XML放在Catalina/localhost目录下
<?xml version='1.0' encoding='utf-8'?>
<Context crossContext="true" docBase="/opt/springmvc/" path="" reloadable="true">
</Context>
#启动项目
cd /opt/apache-tomcat-6.0.36/bin
./start.sh
#访问
http://192.168.0.108:8080
#修改NG配置
#user nobody;
worker_processes
2
; error_log logs/error.log;
events {
use epoll;
worker_connections 1024;
} http {
include mime.types;
default_type application/octet-stream; log_format main '$remote_addr - $remote_user [$time_local] "$request" '
'$status $body_bytes_sent "$http_referer" '
'"$http_user_agent" "$http_x_forwarded_for"'; #tcp_nodelay on;
sendfile on;
keepalive_timeout 65; #启用gzip
gzip on;
gzip_min_length 1000;
gzip_buffers 4 8k;
gzip_http_version 1.1;
gzip_types text/plain application/x-javascript text/css application/xml; include proxy.conf;
upstream tomcat_server {
server 127.0.0.1:8080;
} server {
listen 80;
server_name localhost;
index index.html index.htm index.shtml index.jsp;
root /opt/springmvc; location ~ \.(html|shtml|jsp|jspx|do|action)?$ { #所有jsp的页面均交由tomcat处理
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $remote_addr;
proxy_pass http://tomcat_server;
} location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ #设定访问静态文件直接读取不经过tomcat
{
expires 30d;
}
location ~ .*\.(js|css)?$ {
expires 1h;
} #error_page 404 /404.html; #404页面
error_page 500 502 503 504 /50x.html;
location = /50x.html
{
root html;
} location /nginxstatus {
stub_status on;
access_log on;
auth_basic "nginxstatus";
#auth_basic_user_file conf/passwd;
}
}
}
#添加proxy.conf配置
#允许客户端请求的最大的单个文件字节数
client_max_body_size 10m;
#缓冲区代理缓冲用户端请求的最大字节数 可以理解为先保存到本地再传给用户
client_body_buffer_size 128k;
#跟后端服务器连接的超时时间_发起握手等候响应超时时间
proxy_connect_timeout 300;
#连接成功后_等候后端服务器响应时间_其实已经进入后端的排队等候处理
proxy_read_timeout 300;
#后端服务器数据回传时间_就是在规定时间内后端服务器必须传完所有的数据
proxy_send_timeout 300;
#代理请求缓冲区_这个缓冲区间会保存用户的头信息以供Nginx进行规则处理_一般只要能够保存下头信息即可
proxy_buffer_size 4k;
#同上 告诉Nginx保存单个用的几个Buffer 最大用多大空间
proxy_buffers 4 32k;
#如果系统忙的时候可以申请更大的proxy_buffers 官方推荐*2
proxy_busy_buffers_size 64k;
#proxy 缓存临时文件的大小
proxy_temp_file_write_size 64k;
#启动NG与Tomcat
#启动NG
/opt/nginx/sbin/nginx
#检查是否正确
/opt/nginx/sbin/nginx
#重新加载配置
/opt/nginx/sbin/nginx -s reload
#停止
/opt/nginx/sbin/nginx -s stop
#查看
Tomcat:http://192.168.0.108:8080
Nginx:http://192.168.0.108
Nginxstatus:http://192.168.0.108/nginxstatus
nginx配置参数
#使用哪个用户启动nginx 前面是用户,后面是组
user www www;
#nginx工作的进程数量,一般认为配置值与机器核数相等为佳
worker_processes 2;
# [ debug | info | notice | warn | error | crit ] 错误日志的位置
error_log /var/htdocs/logs/nginx_error.log crit;#进程号保存文件
pid /usr/local/nginx/nginx.pid;#最大文件描述符 建议设置启动nginx的shell可以打开的最大文件描述符
#修改/etc/sysctl.conf,增加fs.file-max=6553560,fs.file-max是指系统所有进程一共可以打开的文件数量
#可以使用ulimit -Hn/-Sn查看该值,可以修改/etc/security/limits.conf,增加以下两行,*表示对所有用户有效
#* soft nofile 65535
#* hard nofile 65535#运行/sbin/sysctl -p命令,重新登录shell生效
worker_rlimit_nofile 65535;events
{
# use [ kqueue | rtsig | epoll | /dev/poll | select | poll ];
use epoll; #使用epoll(linux2.6的高性能方式,了解epoll相关知识和原理可上网络搜索)
worker_connections 51200; #每个进程最大连接数(最大连接=连接数x进程数)
}http
{
#文件扩展名与文件类型映射表,具体查看同目录下的mime.types
include mime.types;#默认文件类型
default_type application/octet-stream;#日志文件格式
log_format main 'remoteaddr−remote_user [timelocal]request '
'"status"body_bytes_sent "httpreferer"′′"http_user_agent" "$http_x_forwarded_for"';log_format download 'remoteaddr−remote_user [timelocal]′′"request" statusbytes_sent '
'"httpreferer""http_user_agent" '
'"httprange""sent_http_content_range"';#默认编码
charset gb2312,utf-8;server_names_hash_bucket_size 128;
#开启高效文件传输模式
sendfile on;
#以下两个选项用于防止网络阻塞 参考http://i.cn.yahoo.com/nesta2001zhang/blog/p_104/
tcp_nopush on;
tcp_nodelay on;#长链接超时时间
keepalive_timeout 300;#fastcgi连接超时时间,下面的看字面意思都能理解个大概了,就不解释了.
fastcgi_connect_timeout 300;
fastcgi_send_timeout 300;
fastcgi_read_timeout 300;
fastcgi_buffer_size 128k;
fastcgi_buffers 4 256k;
fastcgi_busy_buffers_size 256k;
fastcgi_temp_file_write_size 256k;
fastcgi_temp_path /dev/shm;#打开gzip压缩
gzip on;
#最小压缩文件大小,一般大于2k的文件使用gzip能提升效率,否则很小的文件压缩反倒更消耗服务器性能
gzip_min_length 2k;
#压缩缓冲区
gzip_buffers 48k;
#压缩版本(默认1.1,前端为squid2.5使用1.0)
gzip_http_version 1.1;
#压缩类型,默认就已经包含text/html 所以下面就不用再写了,当然写上去的话,也不会有问题,但是会有一个warn
gzip_types text/plain application/x-javascript text/css text/html text/javascript application/xml;
#错误页面
error_page 404 /404.html;
error_page 403 /404.html;
#上传文件大小限制
client_max_body_size 20m;
#设定请求头缓存,如果请求header过大,会使用large_client_header_buffers 来读取
client_header_buffer_size 16k;
large_client_header_buffers 464k;
#设定负载均衡的服务器列表
upstream mysvr {
#weigth参数表示权值,权值越高被分配到的几率越大
#本机上的Squid开启3128端口
server localhost:8080 weight=5;
server 127.0.0.1:8080 weight=1;
}
#下面开始虚拟主机的配置
server
{
listen 80;
server_name localhost;#设定本虚拟主机的访问日志
access_log logs/access.log main;#如果访问 /img/*, /js/*, /css/* 资源,则直接取本地文件,不通过squid
#如果这些文件较多,不推荐这种方式,因为通过squid的缓存效果更好
location ~ ^/(images|javascript|js|css|flash|media|static)/ {
root #应用的根目录;#刷新时间,根据静态文件修改的频度来调整,开发测试阶段可以短一些,生产阶段可以长一些
expires 24h;
}#对 "/" 启用
location / {#http://后面跟upstream 的名字
proxy_pass http://myserver ;
proxy_redirect off;
proxy_set_header Host host;proxysetheaderX−Real−IPremote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
client_max_body_size 10m
Liunx下Tomcat+MYSQL+Nginx配置的更多相关文章
- centos 6.5下安装mysql+nginx+redmine 3.1.0 笔记
centos 6.5下安装mysql+nginx+redmine 3.1.0 笔记 目录[-] 过程 1.安装RVM 2.利用rvm安装 Ruby 1.9.3 并设为默认 3.安装rails 4.安装 ...
- tomcat和nginx配置java服务器
tomcat和nginx配置java服务器 环境配置 服务器配置 写了这么久的SSM,做了一个简单的网站[没有加入数据库],然后就要开始部署javaWEB的云服务器了.本次搭建使用的Tomcat和n ...
- (转)不停止Nginx服务的情况下平滑变更Nginx配置
在不停止Nginx服务的情况下平滑变更Nginx配置 1.修改/usr/local/webserver/nginx/conf/nginx.conf配置文件后,请执行以下命令检查配置文件是否正确: /u ...
- liunx下tomcat启动报错
liunx下tomcat启动 Cannot find ./catalina.sh 2013-08-23 11:50 1521人阅读 评论(0) 收藏 举报 Cannot find ./catalina ...
- ubuntu下安装mysql和配置远程访问
ubuntu下安装mysql和配置远程访问 下载安装mysql sudo apt-get install mysql-client mysql-server 安装的时候会提示要设置root密码,如 ...
- CentOS双机中Docker下安装Mysql并配置互为主从模式
CentOS双机中Docker下安装Mysql并配置互为主从模式 目录 1.搜索镜像... 1 2.拉取镜像... 1 3.绑定端口: 1 4.配置文件(修改/etc/mysql/my.cnf文件): ...
- 服务器环境迁移,Linux centos7 64位 基础环境部署 jdk+tomcat+mysql+nginx
最近阿里云服务器到期,这个周末连夜将服务器迁移到美国去了,为什么迁移到美国去呢?主要是因为阿里云服务器费用高,另外网站的访问量不大,对网速要求也不高,主要是宣传和信息传递的作用,加上本人之前在***上 ...
- Linux下PHP+MYSQL+APACHE配置方法
apache: http://www.apache.org mysql: http://www.mysql.com php: http://www.php.net/downloads.php g ...
- Linux CentOs 下 安装 mysql nginx redis
SCP 的使用 来源于: https://blog.csdn.net/qq_30968657/article/details/72912070 scp [参数] <源地址(用户名@IP地址或主机 ...
随机推荐
- POJ 2318 (叉积) TOYS
题意: 有一个长方形,里面从左到右有n条线段,将矩形分成n+1个格子,编号从左到右为0~n. 端点分别在矩形的上下两条边上,这n条线段互不相交. 现在已知m个点,统计每个格子中点的个数. 分析: 用叉 ...
- A*算法完全理解
注:原文出自Patrick Lester,一稿翻译为Panic.很久以前的老文章了,但我觉得真的非常的经典,想把它完善一下让以后的人能够更好的体会原作者和原翻译的精髓吧.我在此基础上修改了部分译文,更 ...
- 【转载】LVS+MYCAT+读写分离+MYSQL主备同步部署手册(邢锋)
LVS+MYCAT+读写分离+MYSQL主备同步部署手册 1 配置MYSQL主备同步…. 2 1.1 测试环境… 2 1.2 配置主数据库… 2 1.2.1 ...
- I.MX6 Android Linux shell MMPF0100 i2c 获取数据
#!/system/bin/busybox ash # # I.MX6 Android Linux shell MMPF0100 i2c 获取数据 # 说明: # 本文主要记录通过shell脚本来获取 ...
- Java [leetcode 16] 3Sum Closest
题目描述: Given an array S of n integers, find three integers in S such that the sum is closest to a giv ...
- a标签中的label在IE下触发不了a标签的href链接(label标签——解析)
<a href="http://www.baidu.com/" target="_blank"> <span>百度</span&g ...
- 提示35. 怎样实现OfTypeOnly<TEntity>()这样的写法
提示35. 怎样实现OfTypeOnly<TEntity>()这样的写法 如果你编写这样LINQ to Entities查询: 1 var results = from c in ctx. ...
- C# 随机读写入文件
先来代码再解释 public Worker(string path) { FileStream fs = new FileStream( path, FileMode.OpenOrCreate, Fi ...
- (Android Studio)添加按钮以及权重问题
此文大部分摘自http://hukai.me/android-training-course-in-chinese/basics/firstapp/building-ui.html 注意到光标所在代码 ...
- 判断一个面(Polygon)是不是矩形
判断一个面是不是矩形在GIS中很长用的功能,那么怎么判断一个面是不是矩形呢. 这里先要弄懂一些概念,面是什么,先看OGC标准的定义. 我的英文水平有限,(有翻译更好的请留言,如果翻译的准确将被采纳)大 ...