报错:
nginx: [emerg] "server" directive is not allowed here in /etc/nginx/nginx.conf:10
将server{}块放入http{}块中就可以解决这个问题了
报错:
nginx: [warn] conflicting server name "localhost" on 0.0.0.0:80, ignored
报这个错是因为如下配置,即使地址栏输入localhost:80也不会跳到百度页面,而是默认的nginx的页面,所以最好换个端口
server{
listen 80;
server_name localhost;
location / {
proxy_pass https://www.baidu.com;
}
改完端口之后 sudo nginx -s reload重启nginx,访问localhost:8088就可以跳转到百度页面
server{
listen 8010;
server_name localhost;
location / {
proxy_pass https://www.baidu.com;
}
通过nginx访问静态文件配置
server{
listen 8010;
server_name my;
location / {
#proxy_pass https://www.baidu.com;
root /home/upsmart/software/apache-tomcat-8.5.37/webapps/ROOT;
index index.html index.jsp;
}
server_name为域名 可以在hosts文件中配置
这里可能会碰到403的情况,碰到403的情况可能是文件的权限的原因,若是这种情况,执行chmod -R 777 webapps/
这里如果是jsp文件的话,输入url会下载jsp文件,因为nginx并不是servlet容器,没办法处理JSP,所以可以自己在root下创建一个html文件就可以实现
反向代理
server{
listen 8010;
server_name my;
location / {
proxy_pass https://www.baidu.com;
#root /home/upsmart/software/apache-tomcat-8.5.37/webapps/ROOT;
#index index.html index.jsp;
}
负载均衡
#配置一个代理即 真正访问的服务地址
upstream tomcatServer{
server 192.168.87.9:8080;
server 192.168.87.10:8080;
}
#配置一个虚拟主机
server{
listen 8010;
server_name my;
location / {
proxy_pass http://tomcatServer;
#root /home/upsmart/software/apache-tomcat-8.5.37/webapps/ROOT;
#index index.html index.jsp;
}
配置完只要访问my:8010就可以了