前言
承接上一篇博客写的SSM框架搭建的一个后台管理系统,部署到CentOs7服务器,其中遇到的一些坑坑洼洼。
可以看一下项目的内容:
http://codingcoge.cn/ssm-demo/login.html
服务器CentOs7部署jdk,tomcat,mysql这些安装步骤我这就不累赘了,主要讲一下部署ssm项目的时候遇到的一些问题,和常用的shell命令
- rz:本地文件传递到服务器(需要先下载支持rz的依赖包)
- 解压tar文件,如:tar xvf FileName.tar
- 查看服务器后台开启了哪些服务:netstat -ntpl查看端口占用
- kill -9 进程号 杀死进程 强制关闭服务。
- vim操作文本文件:保存退出 :wq! 不保存退出: q!查找关键字:/关键字
nginx的配置问题:
- vim /usr/local/webserver/nginx/conf/nginx.conf
- 配置tomcat集群以及静态资源存放位置:
upstream HA-tomcat{
server localhost:8082;
server localhost:8085;
}
server {
listen 80;
server_name localhost;
#charset koi8-r;
#access_log logs/host.access.log main;
location ^~ /static/ {
root /usr/local/webserver/nginx/;
autoindex on;
}
location ^~ /file/ {
root /usr/local/webserver/nginx/;
autoindex on;
}
location / {
root html;
index index.html index.htm;
proxy_pass http://HA-tomcat;
}
}
以上配置实现的目的是:
实现tomcat集群,两个tomcat的监听端口为8082和8085
-
当访问http://codingcoge.cn/即依次访问http://codingcoge.cn:8082/和http://codingcoge.cn:8085/
-
访问http://codingcoge.cn/static/的时候是访问服务器中/usr/local/webserver/nginx/static/目录
-
访问http://codingcoge.cn/file/的时候是访问服务器中/usr/local/webserver/nginx/file/目录
autoindex on;目的是将static和file目录下的资源全部目录结构化。
如果访问路径带/static/直接访问静态资源,而不会进入tomcat服务器。
nginx问题1:
nginx: [emerg] bind() to 0.0.0.0:80 failed (98: Address already in use)
解决方法:
查找nginx的进程,然后删除对应的pid
ps -ef |grep nginx
nginx问题2:
nginx 出现413 Request Entity Too Large问题
原因:
原来nginx默认上传文件的大小是1M,可nginx的设置中修改。
解决方法:
打开nginx配置文件 nginx.conf,在http{}段中加入 client_max_body_size 5m; 5m为允许最大上传的大小。
关于nginx常用的命令:
/usr/local/webserver/nginx/sbin/nginx # 启动 Nginx
/usr/local/webserver/nginx/sbin/nginx -s reload # 重新载入配置文件
/usr/local/webserver/nginx/sbin/nginx -s reopen # 重启 Nginx
/usr/local/webserver/nginx/sbin/nginx -s stop # 停止 Nginx
tomcat的问题:
首先需要配置两个tomcat:分别修改里面的端口为8081 8082 8083 和8084,8085,8086不冲突即可。
然后**启动tomcat:**进入bin目录
方式一:直接启动 ./startup.sh
方式二:作为服务启动 nohup ./startup.sh &
查看tomcat是否启动
ps -ef |grep tomcat
文件权限问题:
项目中上传图片到服务器,可是无法查看。
原因:其他人没有访问权限。
解决方法:
tomcat默认上传到服务器上的文件是- -rw-r----- 640权限。此时要修改tomcat默认上传文件时,文件的权限。
到tomcat中bin目录下面,修改catalina.sh 中 将UMASK=0027改为0022即可。
如何查找到UMASK呢?
esc然后:/UMASK回车即可
扩展:
文件权限问题:
r 读:4 w 写:2 x 执行:1 没有权限:0
修改权限 chmod 644 2.jpg root为rw 所有组是r 其他人是r
Redis的问题:
**设置Redis密码:**需要配置redis.conf
在redis.conf 找到下面这一行
# requirepass foobared
将注释符号去掉,将后面修改成自己的密码,如:
requirepass 123456
后台开启Redis:
方法1:
进入src目录下,执行./redis-server & (带上&是在后台启动)
方法2:
./redis-server ../redis.conf &指定配置文件启动而且是后台启动
关闭Redis:
./redis-cli shutdown