记性太差,还是得写个教程来总结一下配置javaweb的教程,这篇教程也是综合了网上的很多教程
环境
服务器:阿里云ESC Centos 7.3
本地: Mac OS X 10.10.5
预先准备
最近才发现阿里云是不建议升级服务器的内核和操作系统版本,估计腾讯云也是,当初手贱,不管三七二十一,都给升级了,虽然也没有发现什么不对,就一直将就着用了,系统版本也是最新的7.3,本来是7.2的
为了防止在软件更新时升级了内核及系统版本的情况,按照阿里云给出的帮助文档,我们做如下修改
打开yum.conf文件
1 |
vi /etc/yum.conf |
添加代码
12 |
exclude=kernel*exclude=centos-release* |
这样就防止升级了,如果还是不懂可以,参考帮助文档
接着我们可以开始升级软件包了
1 |
yum -y update |
-y 参数是在执行过程中,遇到的交互默认选择 yes
安装JDK
访问Oracle官网下载jdk,因为Oracle搞了cookie验证,所以wget不方便
下载地址-http://www.oracle.com/technetwork/cn/java/javase/downloads/jdk8-downloads-2133151-zhs.html
安装jdk之前一定要把之前的版本卸载掉
查看之前已经安装的jdk rpm
1 |
rpm -qa | grep jdk |
查到包名之后,我们就可以卸载了
1 |
rpm -e 包名 |
下载完安装包之后,我们用scp命令传到服务器
1 |
scp ~/Downloads/jdk-8u111-linux-x64.rpm [email protected]:/usr/local/src |
因为我已经添加信任,所以就不用输密码了
如果一定要用wget的方法,用服务器直接下载的话,我提供下面的方法
123 |
wget --no-check-certificate --no-cookies --header "Cookie: oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u111-b14/jdk-8u111-linux-x64.rpm# 或者wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" http://download.oracle.com/otn-pub/java/jdk/8u111-b14/jdk-8u111-linux-x64.rpm |
下面就开始安装rpm包了
1 |
rpm -ivh jdk-8u111-linux-x64.rpm |
安装好以后,在/etc/profile文件中配置环境变量
1 |
vi /etc/profile |
加入下面的内容
123 |
export JAVA_HOME=/usr/java/defaultexport PATH=$PATH:$JAVA_HOME/binexport CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar |
查看版本号
1 |
java -version 或 javac -version |
查看环境变量
12 |
echo $PATH#输出了/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/usr/java/default/bin |
安装Tomcat
我下载的是tomcat 8.5,下载地址是-http://tomcat.apache.org/download-80.cgi
1 |
wget http://apache.fayea.com/tomcat/tomcat-8/v8.5.11/bin/apache-tomcat-8.5.11.tar.gz |
解压
1 |
tar?zxvf apache-tomcat-8.5.11.tar.gz |
转移文件
1 |
mv apache-tomcat-8.5.11 /usr/local/tomcat |
运行Tomcat
12 |
cd bin./startup.sh |
停止Tomcat
1 |
./shutdown.sh |
安装mysql
下载安装rpm
123 |
cd /usr/local/srcwget http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpmrpm -ivh mysql57-community-release-el7-9.noarch.rpm |
安装mysql
1 |
yum install mysql-community-server |
安装mysql要好长一段时间,结果中途断网了,真悲剧
123456 |
/var/run/yum.pid 已被锁定,PID 为 8095 的另一个程序正在运行。Another app is currently holding the yum lock; waiting for it to exit... 另一个应用程序是:yum 内存: 88 M RSS (480 MB VSZ) 已启动: Wed Mar 1 18:56:02 2017 - 1:48:09之前 状态 :睡眠中,进程ID:8095 |
只能删除该进程
1 |
rm -rf /var/run/yum.pid |
清理之前下的缓存后重新下载
12 |
yum clean allyum install mysql-community-server |
下面的过程和之前的文章一样-Centos7 mysql 安装篇
安装Nginx
先查看yum可以安装的版本
1 |
yum info nginx |
我的是1.10.2,所以就打算用他的了
1 |
yum install nginx |
因为这样安装不用自己去装依赖,安装完也可以用命令去查看版本
1 |
nginx -v |
开启服务
1 |
systemctl start nginx |
查看状态
1 |
systemctl status nginx |
当然也可以更换软件源,首先新建一个repo,例如 nginx.repo
1 |
vim?/etc/yum.repos.d/nginx.repo |
编辑内容如下
12345 |
[nginx]name=nginx repobaseurl=http://nginx.org/packages/mainline/centos/7/$basearch/gpgcheck=0enabled=1 |
这里配置的是mainline version,如果想用稳定版,将baseurl中的mainline删除即可
配置Nginx
用yum安装的nginx,配置文件在/etc/nginx/nginx.conf
这里
1 |
vi /etc/nginx/nginx.conf |
添加监听端口,因为tomcat是8080端口
123456789101112131415161718192021 |
server { listen 80; #listen [::]:80 default_server; server_name www.maijinta.top; root /usr/share/nginx/html; # Load configuration files for the default server block. include /etc/nginx/defaul 大专栏 Centos从头配置javaweb环境t.d/*.conf; location / { proxy_pass http://127.0.0.1:8080; } error_page 404 /404.html; location = /40x.html { } error_page 500 502 503 504 /50x.html; location = /50x.html { }} |
然后重启服务
1 |
systemctl restart nginx |
安装Redis
目前稳定版是3.2.8,其实应该不管版本直接下stable版本就好了
1 |
wget http://download.redis.io/releases/redis-stable.tar.gz |
首先可以判断是否装了tcl
1 |
rpm -qa tcl |
有版本号回复说明装了
也可以用which tcl
或whereis tcl
接下来就解压,并移到想要的位置
12 |
tar zxvf redis-stable.tar.gzmv redis-stable /usr/local/ |
进入redis目录,编译
12 |
cd /usr/local/redis-stablemake |
然后编译检查
12 |
make test#成功后会提示 o/ All tests passed without errors! |
如果它提示缺什么,就装什么
编译检查很持续一段时间,结束后就可以安装了
1 |
make install |
安装完就执行
1 |
redis-server |
看到这个图就说明成功了
1234567891011121314151617 |
_._ _.-``__ ''-._ _.-`` `. `_. ''-._ Redis 3.2.8 (00000000/0) 64 bit .-`` .-```. ```/ _.,_ ''-._( ' , .-` | `, ) Running in standalone mode|`-._`-...-` __...-.``-._|'` _.-'| Port: 6379| `-._ `._ / _.-' | PID: 20631 `-._ `-._ `-./ _.-' _.-'|`-._`-._ `-.__.-' _.-'_.-'|| `-._`-._ _.-'_.-' | http://redis.io `-._ `-._`-.__.-'_.-' _.-'|`-._`-._ `-.__.-' _.-'_.-'|| `-._`-._ _.-'_.-' | `-._ `-._`-.__.-'_.-' _.-' `-._ `-.__.-' _.-' `-._ _.-' `-.__.-' |
设置redis 服务后台启动,在配置文件 redis.conf 中设置
1 |
daemonize yes #默认是no |
然后用这个配置启动
1 |
redis-server redis.conf |
查看进程,果然redis已经启动了
12 |
ps -aux #查看所有进程ps -ef|grep redis #只看redis |
用客户端测试
123 |
redis-cliset name frankget name |
测试成功
关闭redis服务
12 |
redis-cli shutdownpkill redis-server #杀死进程 |
修改配置文件
123 |
vim redis.conf#requirepass foobared #在这里把注释去掉,换个密码,如requirepass 123456#bind 127.0.0.1 #加上注释,允许远程访问 |
查看网络监听
1 |
netstat -nlt|grep 6379 |
看到网络监听从127.0.0.1:6379
变成 0 0.0.0.0:6379
,表示Redis已经允许远程登陆访问
修改redis-cli
密码,默认是空
1234567 |
执行redis-cli #登录执行config get requirepass得到 1) "requirepass" 2) "" #由此可见是没密码的执行config set requirepass 123456 #设置密码需要重新登陆执行redis-cli -h 127.0.0.1 -p 6379 -a 123456或redis-cli -a 123456 |
开机启动配置
1 |
echo "/usr/local/redis-stable/redis-server /usr/local/redis-stable/redis.conf &" >> /etc/rc.local |
安装vsftpd
直接yum安装
1 |
yum -y install vsftpd |
启动vsftpd服务
123 |
systemctl restart vsftpd.service # 重启服务systemctl start vsftpd.service # 启动服务systemctl status vsftpd.service # 服务状态查看 |
修改配置文件
1 |
vim /etc/vsftpd/vsftpd.conf |
123456789101112 |
anonymous_enable=NO # 不允许匿名访问,禁用匿名登录chroot_local_user=YES # 启用限定用户在其主目录下chroot_list_enable=YESchroot_list_file=/etc/vsftpd/chroot_listuse_localtime=YES # 使用本地时(自行添加)local_enable=YES # 允许使用本地帐户进行FTP用户登录验证allow_writeable_chroot=YES # 如果启用了限定用户在其主目录下需要添加这个配置,解决报错 500 OOPS: vsftpd: refusing to run with writable root inside chroot()xferlog_enable=YES # 启用上传和下载的日志功能,默认开启。local_umask=022 # 设置本地用户默认文件掩码022# FTP上本地的文件权限,默认是077,不过vsftpd安装后的配置文件里默认是022ascii_upload_enable=YES #设定支持ASCII模式的上传和下载功能ascii_download_enable=YES |
从2.3.5之后,vsftpd增强了安全检查,如果用户被限定在了其主目录下,则该用户的主目录不能再具有写权限了
所以要添加 allow_writeable_chroot=YES
创建新用户
123456 |
#创建用户 ftpuser 指定 /var/ftp/public_root 目录useradd -d /var/ftp/public_root -g ftp -s /sbin/nologin ftpuser# 设置用户 ftpuser 的密码passwd ftpuser# 把 /home/vsftpd 的所有权给ftpuser.root# chown -R ftpuser.root /var/ftp/public_root 这步不用做,做了应该也没事 |
-s:禁止此用户登录SSH的权限
/sbin/nologin:不允许此用户登录系统,但可以登录FTP
权限设置
1234 |
<!--更改目录所有者-->chown ftpuser /var/ftp/public_root<!--更改目录权限-->chmod -R 755 /var/ftp/public_root |
设置开机重启
1 |
systemctl enable vsftpd.service |
删除用户
1 |
userdel ftpuser |
最后在Filezilla中创建新站点就可以用了
原文地址:https://www.cnblogs.com/dajunjun/p/11712836.html