Linux反向代理
-
首先我们先在Linux上安装nginx
-
具体步骤 [点这里]
-
. 这里在提几句 nginx相关命令
-
重载或停止nginx
(1) 编辑nginx.conf文件后重启nginx:
nginx -s reload
(2) 完整停止nginx:
nginx -s quit
此方式是待nginx处理完任务后再停止nginx(3) 快速停止nginx:
nginx -s stop
此方式是直接kill掉nginx进程 -
先确保我们的机器上安装有 tomcat 以及有java运行环境,
这里 有更加详细的安装方法哦! -
具体安装方法 点这里哦
-
然后确认安装完成 ,进入
之后我们可以启动nginx 进入到 欢迎 - welcome 页面
-
这样我们可以确保我们的Tomcat 与 nginx 是完好的
接下来该我们操作了 哈哈 !!! -
进入我们安装 nginx的路径
[root@localhost /]# cd /usr/local/nginx/conf/nginx.conf
bash: cd: /usr/local/nginx/conf/nginx.conf: 不是目录
[root@localhost /]# cd /usr/local/nginx/conf
[root@localhost conf]# vi nginx.conf
- 配置server块中的 代码
server {
listen 80;
server_name 192.168.61.129; //虚拟机的ip,即为我们的访问地址
#charset koi8-r;
#access_log logs/host.access.log main;
location / {
proxy_pass http://192.168.61.129:8080; //代理的地址
root html;
index index.html index.htm;
#代理的连接超时时间(单位:毫秒)
proxy_connect_timeout 600;
#代理的读取资源超时时间(单位:毫秒)
proxy_read_timeout 600;
}
- wq! 保存退出 ,修改后重启nginx
[root@localhost conf]# nginx -s reload
- 在浏览器中输入 我们的nginx访问地址,就可以访问我们的Tomcat了,
这样一个简单 的反向代理就完成了 - 配置完工 ,谢谢大家!!!
操作过程中大家可能遇到的问题:
- . linux安装启动tomcat之后浏览器无法访问
-
(1).首先确定tomcat是否启动着,即在工作,然后查看端口对不对,是不是端口被占用,若被占用在server.xml中修改访问的端口
-
(2).还有就是我这个问题,根据提示查看是不是防火墙没关的问题,linux服务器要被外界访问需要关闭防火墙,注意,不是你电脑本机的防火墙,是服务器的防火墙,关闭之后才可以访问,我的是在虚拟机上运行的,所以我在虚拟机中关闭服务器的防火墙
-
(3).这个和linux系统也有关系,不同的系统不同的版本关闭防火墙的方式都不一样,我装的是centos7,在虚拟机中执行如下命令
-
sysstem stop firewalld
-
(4)之后最好重启tomcat
-
(5)解决完成
-
- .-bash: nginx: 未找到命令 (command not found) 解决方案
-
(1) 在linux中安装了 nginx ,并按照网上教程 进行启动
如: ps -ef | grep nginx 可以查看到
-
(2) 我就想重新加载一次
如:提示我找不到 nginx 命令
-c参数指定了要加载的nginx配置文件路径
/usr/local/nginx/conf/nginx.conf 是nginx的配置路径
-
(3) 如果问题还未解决:
[root@zxc sbin]# nginx -s reload
-bash: nginx: command not found -
(4) 继续:
我们可以直接Nginx的路径配置到系统变量中,配完需要重启系统----后来发现使配置文件生效不需要重启系统
只需要输入source /etc/profile
让配置文件重新生效一下即可
特此记录 !!!!! -
(5)修改
vi /etc/profile
在后边加入:
-
#nginx
export NGINX_HOME=/usr/local/nginx
export PATH=$PATH:$NGINX_HOME/sbin
- 重启系统后再次进行测试 ,在根目录下再次执行命令,发现没有消息返回,说明已经成功了
- 还有就是我们可以强制关闭它 :
- 查询nginx主进程号
ps -ef | grep nginx
从容停止 kill -QUIT 主进程号
快速停止 kill -TERM 主进程号
强制停止 kill -9 nginx
若nginx.conf配置了pid文件路径,如果没有,则在logs目录下
kill -信号类型 '/usr/local/nginx/logs/nginx.pid