zoukankan      html  css  js  c++  java
  • Nginx 直接输出IP地址,免端口

    server {
    	listen 80;
    	listen [::]:80 ipv6only=on;
    	server_name ip.larva.com.cn;
    
    	location / {
    		if ($request_method !~* GET|OPTIONS) {
    			return 403;
    		}
    		if ($request_method = 'OPTIONS') {
    			add_header 'Access-Control-Allow-Origin' '*';
    			add_header 'Access-Control-Allow-Methods' 'GET, OPTIONS';
    			#
    			# Custom headers and headers various browsers *should* be OK with but aren't
    			#
    
    			add_header 'Access-Control-Allow-Headers' '*';
    			#
    			# Tell client that this pre-flight info is valid for 20 days
    			#
    
    			add_header 'Access-Control-Max-Age' 1728000;
    			add_header 'Content-Type' 'text/plain; charset=utf-8';
    			add_header 'Content-Length' 0;
    			return 204;
    		}
    		if ($request_method = 'GET') {
    			add_header 'Access-Control-Allow-Origin' '*';
    			add_header 'Access-Control-Allow-Methods' 'GET, OPTIONS';
    			add_header 'Access-Control-Allow-Headers' '*';
    			add_header 'Access-Control-Expose-Headers' '*';
    			add_header 'Content-Type' 'text/plain; charset=utf-8';
    		}
    
    		return 200 $remote_addr;
    	}
    
    	location /port {
    		if ($request_method !~* GET|OPTIONS) {
    			return 403;
    		}
    		if ($request_method = 'OPTIONS') {
    			add_header 'Access-Control-Allow-Origin' '*';
    			add_header 'Access-Control-Allow-Methods' 'GET, OPTIONS';
    			#
    			# Custom headers and headers various browsers *should* be OK with but aren't
    			#
    
    			add_header 'Access-Control-Allow-Headers' '*';
    			#
    			# Tell client that this pre-flight info is valid for 20 days
    			#
    
    			add_header 'Access-Control-Max-Age' 1728000;
    			add_header 'Content-Type' 'text/plain; charset=utf-8';
    			add_header 'Content-Length' 0;
    			return 204;
    		}
    		if ($request_method = 'GET') {
    			add_header 'Access-Control-Allow-Origin' '*';
    			add_header 'Access-Control-Allow-Methods' 'GET, OPTIONS';
    			add_header 'Access-Control-Allow-Headers' '*';
    			add_header 'Access-Control-Expose-Headers' '*';
    			add_header 'Content-Type' 'text/plain; charset=utf-8';
    		}
    
    		return 200 '$remote_addr:$remote_port';
    	}
    
    	location /json {
    		if ($request_method !~* GET|OPTIONS) {
    			return 403;
    		}
    		if ($request_method = 'OPTIONS') {
    			add_header 'Access-Control-Allow-Origin' '*';
    			add_header 'Access-Control-Allow-Methods' 'GET, OPTIONS';
    			#
    			# Custom headers and headers various browsers *should* be OK with but aren't
    			#
    
    			add_header 'Access-Control-Allow-Headers' '*';
    			#
    			# Tell client that this pre-flight info is valid for 20 days
    			#
    
    			add_header 'Access-Control-Max-Age' 1728000;
    			add_header 'Content-Type' 'text/plain; charset=utf-8';
    			add_header 'Content-Length' 0;
    			return 204;
    		}
    		if ($request_method = 'GET') {
    			add_header 'Access-Control-Allow-Origin' '*';
    			add_header 'Access-Control-Allow-Methods' 'GET, OPTIONS';
    			add_header 'Access-Control-Allow-Headers' '*';
    			add_header 'Access-Control-Expose-Headers' '*';
    			add_header 'Content-Type' 'application/json; charset=utf-8';
    		}
    
    		return 200 '{"ip":"$remote_addr","port":$remote_port}';
    	}
    }
    
  • 相关阅读:
    less和vim中使用正则表达式搜索
    正则表达式解英语单词字谜
    正则表达式中的Quantifiers
    grep正则表达式(二)
    grep正则表达式(一)
    Linux中的touch命令总结(一)
    find命令进阶(三):xargs
    find命令进阶(二):对找到的文件执行操作exec
    构造函数
    Bean的生命周期
  • 原文地址:https://www.cnblogs.com/fyblzds/p/12780270.html
Copyright © 2011-2022 走看看