nginx+tomcat 数字无法提交

发布于 2021-11-07 20:37:56 字数 2516 浏览 817 评论 9

碰到一个很诡异的问题,表单若干数据,但是value=“数字”的数据无法提交到服务器。

服务器nginx+tomcat  代理给tomcat处理

诡异的是什么呢, 比如hidden为1无法提交、改为1.0就可以了

有时候name=xxx.bbb value=40   这样的表单值也无法提交上去

采用了struts2

我怀疑是nginx配置的问题,页面提交后数据其实提交给了nginx代理过去的时候应该是被过滤掉了,帮忙解决一下。

nginx.conf:

#user  nobody;
worker_processes  2;

#error_log  logs/error.log;
#error_log  logs/error.log  notice;
#error_log  logs/error.log  info;

#pid        logs/nginx.pid;

events { 
    use epoll;
    # 每个工作进程允许最大的同时连接数
    worker_connections  4000;
} 


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;

	server_names_hash_bucket_size 128;
    client_header_buffer_size 32k;
    large_client_header_buffers 4 32k;
	client_max_body_size 5M;
	
    #keepalive_timeout  0;
    keepalive_timeout  65;

	gzip  on;
	gzip_http_version 1.0;
	gzip_min_length 1000;
	gzip_buffers 4 8k;
	gzip_comp_level 5;
	gzip_disable "MSIE [1-6].";
	gzip_types text/plain application/x-javascript text/css text/javascript application/xml;
	gzip_vary on;
	server {
		listen 80;
		server_name url.com;
		rewrite ^ http://www.url.com$request_uri?;
	}
    server {
		listen   80;
		server_name  www.url.com;
		index index.html index.jsp index.htm;
		root /home/www/ROOT;
		error_page 404 http://www.url.com/404error.html;
		error_page 500 502 503 504	http://www.url.com/500error.html;
		error_log on;
		
		location ~.*.(jsp|action|do)$ {
			index /home/www/ROOT/index.html;
			proxy_pass http://localhost:8080;
			proxy_set_header Host $host;
			proxy_set_header X-Real-IP $remote_addr;
			proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
			proxy_set_header Via "nginx";
		}
		
		#dwr
		location ~ /dwr/* {
			proxy_pass http://localhost:8080;
		}
		
        location ~.*.(gif|jpg|png|bmp|swf)$ {
			expires 24h;
        }

		location ~.*.(js|css|html|htm)?$ {
			expires 24h;
		}
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }
        location ~ /.ht {
            deny  all;
        }
    }
}

 

配置不当之处请指出

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(8

凌乱心跳 2021-11-08 18:54:43

谢谢,我刚才检查了代码,吓了一跳,filter的encoding设置为null,根本没有对字符做过滤,- -! 可能真是这个问题引起的,明天去公司测试,感谢关注

飘然心甜 2021-11-08 18:54:39

这个可以看看是否是字符过滤的servlet引起的,一般工程为了解决乱码问题就会加入一个编码过滤!去掉试试

永不分离 2021-11-08 18:41:01

我觉得是代码问题,慢慢排查吧,问题就是这样慢慢缩小范围而被解决的

无声静候 2021-11-08 18:10:44

还是没找到解决办法,哥,头大了。定位原因是单双字节的问题。单字节无法提交,伤不起。

刘备忘录 2021-11-08 17:33:35

引用来自“新人王”的答案

引用来自“红薯”的答案

你这个问题应该跟 nginx 无关,不信你试试把nginx去掉,直接访问 tomcat,问题应该还是存在的

残花月 2021-11-08 17:11:25

部署到服务器也先不用nginx直接对tomcat测试看看

猫九 2021-11-08 16:23:00

引用来自“红薯”的答案

你这个问题应该跟 nginx 无关,不信你试试把nginx去掉,直接访问 tomcat,问题应该还是存在的

归属感 2021-11-08 11:26:25

你这个问题应该跟 nginx 无关,不信你试试把nginx去掉,直接访问 tomcat,问题应该还是存在的

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文