怎么在nginx中解決cookie跨域訪問問題

怎么在nginx中解決cookie跨域訪問問題?很多新手對此不是很清楚,為了幫助大家解決這個(gè)難題,下面小編將為大家詳細(xì)講解,有這方面需求的人可以來學(xué)習(xí)下,希望你能有所收獲。

成都創(chuàng)新互聯(lián)公司長期為上千多家客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊(duì)從業(yè)經(jīng)驗(yàn)10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為正藍(lán)企業(yè)提供專業(yè)的成都網(wǎng)站設(shè)計(jì)、成都網(wǎng)站制作,正藍(lán)網(wǎng)站改版等技術(shù)服務(wù)。擁有十多年豐富建站經(jīng)驗(yàn)和眾多成功案例,為您定制開發(fā)。

1

nginx: [emerg] unknown directive "aio" in

加上--with-file-aio 

復(fù)制代碼 代碼如下:

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

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

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

原來服務(wù)器的配置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 {

    }

  }

}

原來服務(wù)器的
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啟動(dòng)后,通過訪問不同的域名來訪問不同服務(wù)器。而因?yàn)槎加卸売蛎?abc.com.cn。所以可以共享cookie。

nginx的文件結(jié)構(gòu)為:

怎么在nginx中解決cookie跨域訪問問題

三、修改后的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 當(dāng)做單點(diǎn)服務(wù)器,登錄后的domain都為192.168.0.1 。其他的0.2、0.3都可以通過192.168.0.1nginx和單點(diǎn)服務(wù)器的不同端口訪問,那么就可以共享這個(gè)0.1的域名了。

看完上述內(nèi)容是否對您有幫助呢?如果還想對相關(guān)知識有進(jìn)一步的了解或閱讀更多相關(guān)文章,請關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝您對創(chuàng)新互聯(lián)的支持。

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

分享文章:怎么在nginx中解決cookie跨域訪問問題
網(wǎng)頁網(wǎng)址:http://muchs.cn/article40/gedheo.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供響應(yīng)式網(wǎng)站、域名注冊、Google、定制開發(fā)、小程序開發(fā)網(wǎng)站內(nèi)鏈

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都網(wǎng)站建設(shè)公司