千家信息网

怎么在nginx中解决cookie跨域访问问题

发表于:2025-12-03 作者:千家信息网编辑
千家信息网最后更新 2025年12月03日,怎么在nginx中解决cookie跨域访问问题?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。1nginx: [emerg
千家信息网最后更新 2025年12月03日怎么在nginx中解决cookie跨域访问问题

怎么在nginx中解决cookie跨域访问问题?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。

1

nginx: [emerg] unknown directive "aio" in

加上--with-file-aio

复制代码 代码如下:

Starting nginx: nginx: [emerg] the INET6 sockets are not supported on this platform in "[::]:80" of the

在后面加上--with-ipv6好使。

安装完成后。主要是nginx.conf的配置

原来服务器的配置nginx.conf:

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

# For more information on configuration, see:

# * Official English Documentation: http://nginx.org/en/docs/

# * Official Russian Documentation: http://nginx.org/ru/docs/

user root;

worker_processes 2;

worker_cpu_affinity 1000 0100;

error_log logs/error.log;

pid logs/nginx.pid;

events {

worker_connections 2048;

}

http {

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;

gzip on;

gzip_min_length 1000;

gzip_buffers 4 8k;

gzip_types text/plain application/javascript application/x-javascript text/css application/xml;

client_max_body_size 8M;

client_body_buffer_size 128k;

sendfile on;

tcp_nopush on;

tcp_nodelay on;

keepalive_timeout 65;

types_hash_max_size 2048;

include mime.types;

default_type application/octet-stream;

connection_pool_size 512;

aio on;

open_file_cache max=1000 inactive=20s;

# Load modular configuration files from the /etc/nginx/conf.d directory.

# See http://nginx.org/en/docs/ngx_core_module.html#include

# for more information.

  #  主要配置在这里,nginx.conf配置都是一样

include /usr/local/nginx/conf/conf.d/*.conf;

server {

listen 80 default_server;

listen [::]:80 ipv6only=on default_server;

server_name _;

root html;

# Load configuration files for the default server block.

include /usr/local/nginx/conf/default.d/*.conf;

location / {

}

error_page 404 /404.html;

location = /40x.html {

}

error_page 500 502 503 504 /50x.html;

location = /50x.html {

}

}

}

原来服务器的
conf.d/*.conf的配置是reverse-proxy.conf

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

server

{

listen 80;

server_name m.abc.com.cn;

location / {

root /usr/share/nginx/html/;

index index.html index.htm;

}

location ~ .(jsp|do)?$ {

proxy_redirect off;

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_pass http://localhost:8084;

}

if ($http_user_agent ~* "qihoobot|Baiduspider|Googlebot|Googlebot-Mobile|Googlebot-Image|Mediapartners-Google|Adsbot-Google|Feedfetcher-Google|Yahoo! Slurp|Yahoo! Slurp China|YoudaoBot|Sosospider|Sogou spider|Sogou web spider|MSNBot|ia_archiver|Tomato Bot") {

return 403;

}

access_log /home/logs/nginx/m.abc.com.cn_access.log;

}

server

{

listen 80;

server_name store.abc.com.cn *.store.abc.com.cn;

location / {

proxy_redirect off;

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_pass http://localhost:8081;

}

access_log /home/logs/nginx/store.abc.com.cn_access.log;

}

server

{

listen 80;

server_name shopcenter.abc.com.cn;

location / {

proxy_redirect off;

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_pass http://10.45.100.222:8082;

}

access_log /home/logs/nginx/shopcenter.abc.com.cn_access.log;

}

server

{

listen 80;

server_name search.abc.com.cn;

location / {

proxy_redirect off;

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_pass http://10.45.100.68:8083;

}

access_log /home/logs/nginx/search.abc.com.cn_access.log;

}

以上配置后,nginx启动后,通过访问不同的域名来访问不同服务器。而因为都有二级域名.abc.com.cn。所以可以共享cookie。

nginx的文件结构为:

三、修改后的nginx配置

主要是reverse-proxy.conf 不同

?

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27

28

29

30

31

32

33

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

95

96

97

98

server

{

listen 9998;

server_name 192.168.0.1:9998;

location /servlets/ {

proxy_redirect off;

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_pass http://192.168.0.1:8088;

}

location / {

root /usr/local/nginx/html/web/;

index index.html index.htm;

}

location ~ .(jsp|do)?$ {

proxy_redirect off;

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_pass http://192.168.0.1:8088;

proxy_http_version 1.1;

proxy_set_header Upgrade $http_upgrade;

proxy_set_header Connection "upgrade";

proxy_read_timeout 700s;

}

if ($http_user_agent ~* "qihoobot|Baiduspider|Googlebot|Googlebot-Mobile|Googlebot-Image|Mediapartners-Google|Adsbot-Google|Feedfetcher-Google|Yahoo! Slurp|Yahoo! Slurp China|YoudaoBot|Sosospider|Sogou spider|Sogou web spider|MSNBot|ia_archiver|Tomato Bot") {

return 403;

}

access_log /usr/local/nginx/logs/www.abc.com.cn_access.log;

}

server

{

listen 9994;

server_name 192.168.0.1:9994;

location / {

proxy_redirect off;

root /usr/local/nginx/html/weixin/;

index index.html index.htm;

}

location ~ .(jsp|do)?$ {

proxy_redirect off;

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_pass http://localhost:8084;

}

if ($http_user_agent ~* "qihoobot|Baiduspider|Googlebot|Googlebot-Mobile|Googlebot-Image|Mediapartners-Google|Adsbot-Google|Feedfetcher-Google|Yahoo! Slurp|Yahoo! Slurp China|YoudaoBot|Sosospider|Sogou spider|Sogou web spider|MSNBot|ia_archiver|Tomato Bot") {

return 403;

}

access_log /usr/local/nginx/logs/m.abc.com.cn_access.log;

}

server

{

listen 9990;

server_name store.abc.com.cn *.store.abc.com.cn;

location / {

proxy_redirect off;

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_pass http://localhost:8081;

}

access_log /usr/local/nginx/logs/store.abc.com.cn_access.log;

}

server

{

listen 9992;

server_name 192.168.0.1:9992;

location / {

proxy_redirect off;

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_pass http://192.168.0.2:8082;

}

access_log /usr/local/nginx/logs/shopcenter.abc.com.cn_access.log;

}

server

{

listen 9993;

server_name 192.168.0.1:9993;

location / {

proxy_redirect off;

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_pass http://192.168.0.3:8083;

}

access_log /usr/local/nginx/logs/search.abc.com.cn_access.log;

}

这样就可以把192.168.0.1:9998 当做单点服务器,登录后的domain都为192.168.0.1 。其他的0.2、0.3都可以通过192.168.0.1nginx和单点服务器的不同端口访问,那么就可以共享这个0.1的域名了。

看完上述内容是否对您有帮助呢?如果还想对相关知识有进一步的了解或阅读更多相关文章,请关注行业资讯频道,感谢您对的支持。

http://www.cnblogs.com/minzhousblogs/p/9023391.html

0