溫馨提示×

nginx在centos上如何實現跨域訪問

小樊
35
2025-10-26 00:48:03
欄目: 智能運維

在CentOS上配置Nginx以支持跨域訪問,通常需要修改Nginx的配置文件。以下是具體步驟:

  1. 打開Nginx配置文件: 通常,Nginx的主配置文件位于 /etc/nginx/nginx.conf,但更常見的是在 /etc/nginx/conf.d//etc/nginx/sites-available/ 目錄下的虛擬主機配置文件中。

    sudo vi /etc/nginx/nginx.conf
    

    或者

    sudo vi /etc/nginx/conf.d/default.conf
    
  2. 添加跨域配置: 在 server 塊或 location 塊中添加以下配置:

    server {
        listen 80;
        server_name example.com;  # 替換為你的域名或IP地址
    
        location / {
            add_header 'Access-Control-Allow-Origin' '*' always;
            add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS' always;
            add_header 'Access-Control-Allow-Headers' 'Origin, X-Requested-With, Content-Type, Accept, Authorization' always;
    
            if ($request_method = 'OPTIONS') {
                add_header 'Access-Control-Allow-Origin' '*';
                add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS';
                add_header 'Access-Control-Allow-Headers' 'Origin, X-Requested-With, Content-Type, Accept, Authorization';
                add_header 'Content-Length' 0;
                add_header 'Content-Type' 'text/plain charset=UTF-8';
                return 204;
            }
    
            # 其他配置...
        }
    }
    

    解釋:

    • add_header 'Access-Control-Allow-Origin' '*' always;:允許所有來源的請求。
    • add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS' always;:允許的HTTP方法。
    • add_header 'Access-Control-Allow-Headers' 'Origin, X-Requested-With, Content-Type, Accept, Authorization' always;:允許的請求頭。
    • if ($request_method = 'OPTIONS'):處理預檢請求(OPTIONS),返回204狀態碼。
  3. 保存并退出編輯器: 按 Esc 鍵,然后輸入 :wq 并按回車鍵保存并退出。

  4. 測試Nginx配置: 運行以下命令檢查Nginx配置是否正確:

    sudo nginx -t
    
  5. 重新加載Nginx: 如果配置文件沒有問題,重新加載Nginx以應用更改:

    sudo systemctl reload nginx
    

完成以上步驟后,Nginx應該已經配置好支持跨域訪問了。你可以通過瀏覽器開發者工具或使用 curl 等工具進行測試,確??缬蛘埱竽軌蛘9ぷ?。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女