คำถามติดแท็ก http-headers

ฟิลด์ส่วนหัว HTTP เป็นส่วนประกอบของส่วนหัวข้อความของคำขอและการตอบสนองใน Hypertext Transfer Protocol (HTTP) พวกเขากำหนดพารามิเตอร์ปฏิบัติการของธุรกรรม HTTP

5
ใช้ API ถ้าฉันแก้ไขส่วนหัวของประเภทเนื้อหาที่จะทำลายสิ่งต่าง ๆ สำหรับลูกค้า?
เรากำลังเรียกใช้ API โดยมีบางคนใช้งานอยู่ เนื่องจากความซุ่มซ่ามมรดกในส่วนของฉันซึ่งเป็นหนึ่งในปลายทางจะกลับหัวเนื้อหาผิดประเภท , เมื่อมันควรจะเป็นjs jsonคำถามของฉันคือถ้าเราแก้ไขปัญหานี้ด้วยการสลับเพื่อคืนค่าที่ถูกต้องมันจะเลวร้ายขนาดไหนสำหรับลูกค้าปัจจุบันของเรา หรือเพื่อให้เป็นไปในทางอื่นคุณคาดหวังว่าไคลเอนต์ HTTP ไคลเอนต์จำนวนมากจะแสดงข้อผิดพลาดร้ายแรงเมื่อเห็นการเปลี่ยนแปลงดังกล่าวหรือไม่? เรากำลังพยายามตัดสินใจว่านี่เป็นการเปลี่ยนแปลงที่เราสามารถทำได้โดยไม่ทำให้เหงื่อออกมากเกินไปหรือเราควรส่งอีเมลถึงผู้ใช้ทุกคนอย่างรอบคอบและประกาศช่วงเวลาเลิกใช้หลายปี ... หรืออะไรทำนองนั้น อาจขึ้นอยู่กับว่ามีการใช้ไคลเอนต์ HTTP ประเภทใดดังนั้นฉันจึงดูตัวแทนผู้ใช้ คำตอบ: มีหลายสิ่งหลายอย่าง! นี่คือบางส่วนของคนชั้นนำ: "okhttp / 3.2.0", "python-ร้องขอ / 2.10.0", "Ruby", "python-ร้องขอ / 2.7.0", "Mozilla / 5.0", "Java / 1.8.0_91", "python-ร้องขอ /2.4.3 "," okhttp / 3.3.0 "," Lucee "," Dalvik / 2.1.0 "," Google-HTTP-Java-Client / …

3
ตั้งส่วนหัวใน apache หากยังไม่มีอยู่
ฉันมีพร็อกซีที่ฉีดส่วนหัวบางส่วน แต่ฉันต้องการแก้ไขเพื่อให้ตั้งค่าเฉพาะส่วนหัวหากไม่ได้มีอยู่แล้ว: <Location /api> RequestHeader set MY_HEADER "value" ProxyPass http://127.0.0.1:8000/api ProxypassReverse http://127.0.0.1:8000/api </Location> เป็นไปได้ไหม

4
RequestHeader พร้อมกับตัวแปรสภาพแวดล้อม Apache
ฉันตั้ง Apache ไว้เป็น load balancer ฉันต้องการให้ apache ตั้งค่าส่วนหัว X-Forwarded-Proto แต่วิธีนี้ไม่ทำงาน: RequestHeader set X-Forwarded-Proto "%{SERVER_PROTOCOL}e" ส่วนหัวได้รับการตั้งค่าเป็นโมฆะ มีความคิดอะไรบ้าง

2
การแคชพร็อกซี Nginx - วิธีการตรวจสอบว่ามันทำงานได้หรือไม่
ฉันได้ตั้งค่าไฟล์ nginx.conf ของฉันเพื่อใช้การแคชพร็อกซีจากบทเรียนที่ฉันพบทางออนไลน์ ตอนนี้ฉันกำลังพยายามหาวิธีตรวจสอบว่ามันใช้งานได้จริงหรือไม่ ฉันได้อ่านบางแห่งที่เพิ่มadd_header X-Cache-Status $upstream_cache_status;ไปยังไฟล์กำหนดค่าในส่วนเซิร์ฟเวอร์ควรเพิ่มส่วนหัวแคชในการตอบสนองที่จะแสดงว่ามันมาจากแคช (มีค่าเป็น HIT, MISS หรือ EXPIRED) ฉันต้องการทราบว่าฉันสามารถดูส่วนหัวนี้ได้ที่ไหน (และความคุ้มค่า) เช่นเดียวกับถ้านี่เป็นวิธีที่ถูกต้อง / หากมีวิธีอื่น ฉันใหม่มากกับเทคโนโลยีเว็บโดยทั่วไปขอโทษถ้านี่เป็นคำถาม noob ขอบคุณ!


4
nginx ย้อนกลับหัวข้อที่กำหนดเอง
ฉันมีตัวอย่างต่อไปนี้ location / { proxy_read_timeout 2000; proxy_next_upstream error; proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $http_host; proxy_pass_header X_CUSTOM_HEADER; proxy_redirect off; proxy_max_temp_file_size 0; proxy_pass https://prod; break; } ตอนนี้เมื่อฉันใช้สายขดต่อไปนี้ curl --head -H "X_CUSTOM_HEADER: foo" http://domain.com/api/test ตอนนี้ไม่ทำงาน .. apache / php บนแบ็กเอนด์ไม่เห็นส่วนหัว ถ้าฉันข้าม nginx มันใช้งานได้ curl --head -H "X_CUSTOM_HEADER: foo" http://web1.domain.com/api/test

1
วิธีกำหนดค่า nginx เพื่อให้ทำงานกับ Express ได้อย่างไร
ฉันพยายามกำหนดค่า nginx ดังนั้นจึงproxy_passขอให้แอปโหนดของฉัน คำถามเกี่ยวกับ StackOverflow มี upvotes มากมาย: /programming/5009324/node-js-nginx-and-nowและฉันใช้ config จากที่นั่น (แต่เนื่องจากคำถามเกี่ยวกับการกำหนดค่าเซิร์ฟเวอร์มันควรจะอยู่ใน ServerFault) นี่คือการกำหนดค่า nginx: server { listen 80; listen [::]:80; root /var/www/services.stefanow.net/public_html; index index.html index.htm; server_name services.stefanow.net; location / { try_files $uri $uri/ =404; } location /test-express { proxy_pass http://127.0.0.1:3002; } location /test-http { proxy_pass http://127.0.0.1:3003; } } ใช้โหนดธรรมดา: …

2
ฉันจะบันทึกส่วนหัวการตอบสนองและเนื้อหาใน apache ได้อย่างไร
ฉันต้องการตรวจสอบว่าเซิร์ฟเวอร์ (Apache 2) ส่งคืนเนื้อหาทั้งหมดของหน้าพร้อมกับส่วนหัวที่ถูกต้องหรือไม่ ฉันมีสคริปต์ PHP ที่ทำงานได้สำเร็จ แต่เบราว์เซอร์ได้รับเนื้อหา HTML เพียงครึ่งเดียวเท่านั้นมันถูกตัดออกไป โครงสร้างพื้นฐานไคลเอ็นต์ค่อนข้างซับซ้อนโดยใช้ Novell BorderManager Proxys และเนื้อหา เพื่อให้แน่ใจว่าเซิร์ฟเวอร์ทำงานได้ดีฉันต้องการบันทึกทั้งส่วนหัวและเนื้อหาของ reponse ฉันจะบรรลุสิ่งนี้ได้อย่างไร ฉันดูในmod_log_configโมดูลของ apache (ซึ่งติดตั้งแล้วและพร้อมใช้งาน) แต่จริงๆแล้วฉันไม่ได้จัดการการกำหนดค่าให้เป็นส่วนหัวและส่วนหนึ่งของเอาต์พุต แก้ไข: ฉันจัดการเพื่อบันทึกส่วนหัวด้วย LogFormat "%h %l %u %t \"%r\" %>s %b \"%{HEADER_NAME}o\"" common2 CustomLog /var/log/apache2/response.log common2 แต่น่าเสียดายที่รูปแบบ mod_log_configไม่รองรับเนื้อหาทั้งหมด อัปเดต: ฉันย้ำกับmod_dumpioซึ่งดูเหมือนว่าจะทำอย่างนั้น แต่ฉันไม่สามารถทำให้มันทำงานได้ :-( ใครช่วยได้บ้าง

1
คำสั่ง add_header ในการแทนที่ตำแหน่งคำสั่ง add_header ในเซิร์ฟเวอร์
ใช้nginx 1.2.1ฉันสามารถเพิ่มหลายส่วนหัวโดยใช้add_headerดังนี้: server { listen 80; server_name localhost; root /var/www; add_header Name1 Value1; <=== HERE add_header Name2 Value2; <=== HERE location / { echo "Nginx localhost site"; } } ผลลัพธ์ GET / HTTP/1.1 200 OK Name1: Value1 Name2: Value2 อย่างไรก็ตามฉันทันทีที่ฉันใช้add_headerคำสั่งภายในคำสั่งlocationอื่นadd_headerภายใต้serverจะถูกละเว้น server { listen 80; server_name localhost; root /var/www; add_header Name1 …

2
nginx proxy_pass เขียนตำแหน่งการตอบกลับอีกครั้ง
จุดประสงค์ของอินสแตนซ์ nginx นี้คือการรับ GitLab และ OpenWRT Luci เพื่อเปลี่ยนเส้นทางผ่านพร็อกซีย้อนกลับ มันใช้งานได้แล้วสำหรับเว็บไซต์อื่น ๆ หลายแห่งซึ่งทั้งหมดมี url พื้นฐานซึ่งดูเหมือนจะตอบโต้ปัญหานี้ GitLab ในตัวอย่างนี้อยู่บนโลคัลเซิร์ฟเวอร์ที่พอร์ต 9000 เว็บไซต์ nginx อยู่ที่พอร์ต 8080 OpenWRT มีปัญหาเดียวกัน แต่มี / cgi-bin / luci / การกำหนดค่า nginx ที่เกี่ยวข้องสำหรับตำแหน่งตัวอย่างคือ location /gitlab/ { proxy_pass http://127.0.0.1:9000/; proxy_redirect default; } โปรดทราบว่าผลลัพธ์จะเหมือนกันทั้งที่มีและไม่มีเครื่องหมายทับ มีตัวเลือกการกำหนดค่าพร็อกซีส่วนหัวบางส่วนที่ใช้กับตำแหน่งนี้ # Timeout if the real server is dead proxy_next_upstream …

3
ฉันสามารถใช้หมุดสาธารณะกับ LetsEncrypt ได้หรือไม่
ฉันสามารถติดตั้งกุญแจสาธารณะได้หรือไม่เมื่อฉันตั้งค่า cronjob เพื่อต่ออายุใบรับรอง LetsEncrypt ทุก ๆ 30 วัน? หากต่ออายุใบรับรองใหม่คีย์สาธารณะจะได้รับการต่ออายุด้วยหรือไม่

2
Apache เปลี่ยนเส้นทางและตั้งค่าส่วนหัวแคชหรือไม่
การเปลี่ยนเส้นทางใน Apache ทำได้ง่าย (mod_alias): RedirectMatch ^.*$ http://portal.example.com/ การตั้งค่าส่วนหัวแคชนั้นง่ายพอ ๆ กัน: Header set Cache-Control max-age=0 Header set Expires "Thu, 01 Dec 1994 16:00:00 GMT" (ฉันไม่ต้องการแคชนี้) แต่! ดูเหมือนว่าคุณจะไม่สามารถรวมสองอย่างเข้าด้วยกัน การกำหนดค่านี้ส่งผลให้เกิดการเปลี่ยนเส้นทางที่ถูกส่ง แต่ไม่ใช่ส่วนหัว: <VirtualHost *:80> ServerName __default__ Header set Cache-Control max-age=0 Header set Expires "Thu, 01 Dec 1994 16:00:00 GMT" RedirectMatch ^.*$ http://portal.example.com/ </VirtualHost> ตัวอย่างของสิ่งที่เกิดขึ้นจริง: …

2
ฉันจะตั้งค่าส่วนหัวที่เหมาะสมสำหรับ JSON ใน Apache ได้อย่างไร
ฉันมีเซิร์ฟเวอร์ Apache ที่ให้บริการไฟล์ JSON แบบคงที่ ประเภทเนื้อหามีการแสดงอย่างถูกต้องในส่วนหัวด้วยContent-Type: application/jsonส่วนหัว ฉันจะเพิ่มชุดอักขระที่ถูกต้องลงในส่วนหัวได้อย่างไร ฉันมีบรรทัดต่อไปนี้ในของฉันhttpd.conf: AddDefaultCharset utf-8 แต่ถึงแม้จะมีบรรทัดนี้ก็ตาม Apache ไม่ได้ตั้งค่าชุดอักขระในส่วนหัว สิ่งนี้มีความสำคัญเนื่องจากไฟล์ JSON ของฉันมีข้อมูลบางอย่างเป็นภาษาฝรั่งเศสและสำเนียงไม่ถูกอ่านในรหัส JavaScript ดังนั้นฉันจะตั้งค่าส่วนหัวที่เหมาะสมสำหรับ JSON ใน Apache ได้อย่างไร

3
Amazon S3 ไม่ได้ส่งหัวข้อประเภทเนื้อหา
ฉันมีแอปพลิเคชั่นที่ดาวน์โหลดเนื้อหาจากแหล่งต่าง ๆ ขึ้นอยู่กับส่วนหัว "ประเภทเนื้อหา" ที่ตั้งไว้บนภาพ เว็บเซิร์ฟเวอร์ส่วนใหญ่ทำสิ่งนี้อย่างถูกต้อง แต่ปรากฏว่าเซิร์ฟเวอร์ Amazon S3 ไม่ได้ตั้งค่า Content-Type ฉันถือว่าเซิร์ฟเวอร์ของ Amazon ได้รับการกำหนดค่าอย่างถูกต้องแล้วอาจมีปัญหาอะไรบ้าง ภาพเหล่านี้อัพโหลดไม่ถูกต้องหรือไม่? หรือฉันไม่ควรจะพึ่งพาการตั้งค่าประเภทเนื้อหา? ตัวอย่าง ขอบคุณ

1
วิธีเพิ่มส่วนหัวการตอบกลับด้วย HAproxy 1.6 ตามคำขอ URI
ฉันใช้ HAproxy 1.6 เป็น load balancer หน้าเซิร์ฟเวอร์ Tomcat ฉันต้องการเพิ่มส่วนหัวการตอบกลับตามคำขอ URI ตัวอย่างเช่นฉันต้องการเพิ่มหัวข้อการตอบกลับCache-Control public,max-age="600"เมื่อคำขอ uri เป็น/apiแต่ไม่ใช่เมื่อคำขอ uri เป็นอย่างอื่น ความพยายามครั้งแรกของฉันคือการใช้ acl ตามเส้นทางเพื่อเพิ่มส่วนหัวในการตอบสนอง http: acl api path_reg ^/api/(.*)$ http-response add-header Cache-Control public,max-age="600" if api เมื่อฉันเริ่ม haproxy ด้วย-dฉันมีคำเตือนว่าpath_reg(หรือpath) เข้ากันไม่ได้กับhttp-response: Dec 6 15:22:29 ip-10-30-0-196 haproxy-systemd-wrapper[315]: [WARNING] 340/152229 (2035) : parsing [/etc/haproxy/haproxy.cfg:78] : acl 'api' will never …

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.