คำถามติดแท็ก nginx

nginx (ออกเสียงว่า“ engine x”) เป็นเว็บเซิร์ฟเวอร์ที่มีน้ำหนักเบาและพร็อกซีเซิร์ฟเวอร์ย้อนกลับ

1
TPS ต่ำโดยใช้ Virtualbox + Ubuntu + Nginx + PHP-FPM + Silex
ฉันพยายามที่จะเข้าใจว่าทำไมฉันถึงได้รับอัตรา TPS ต่ำในสภาพแวดล้อมการพัฒนาของฉัน ฉันใช้สิ่งต่อไปนี้: Mac OS X Mavericks VirtualBox Ubuntu 14.04 Nginx -FPM PHP5 Silex ฉันไม่ได้ปรับแต่งการตั้งค่ามากนักเพียงแค่ nginx เพื่อเปิดใช้งานส่วนควบคุมด้านหน้า silex เมื่อใช้ JMeter ฉันกำลังทดสอบว่าคำขอนี้มีต่อสภาพแวดล้อมเท่าไหร่และสิ่งที่ฉันเห็นอยู่คือ ~ 14 ธุรกรรมต่อวินาที จุดสิ้นสุดที่ฉันกดปุ่มนั้นเป็นคำทักทายง่าย ๆ ในโลกสวัสดีที่ตอบสนองโดยใช้ hardcoded json ตอนแรกฉันคิดว่า nginx หรือ php ไม่ยอมรับการเชื่อมต่อพร้อมกัน แต่ดูเหมือนว่าจะเปิดใช้งานตามค่าเริ่มต้น ถ้าฉันรันหนึ่งเธรดเดียวแต่ละคำร้องขอใช้เวลา 70ms หรือมากกว่านั้นถ้าฉันรัน 10 เธรดแต่ละอันจะใช้เวลาใกล้กับวินาทีและต่อไปเรื่อย ๆ ไม่ว่าจะมีกี่เธรดก็ตามปริมาณงานคือ 13/14 tps ขณะที่ฉันรันสิ่งนี้topแสดงให้เห็นว่ากระบวนการ 5 php5-fpm ทั้งหมดใช้เวลาประมาณ 20% …
ubuntu  nginx  php 

1
เซิร์ฟเวอร์หลายเครื่องจากโฮสต์เดียวกรองโดเมนและโดเมนย่อยและการแปลพอร์ต -NGINX
ฉันยังใหม่กับ NGINX ไม่เคยแตะต้องเลย แต่ฉันอยู่ในสถานการณ์เล็ก ๆ น้อย ๆ ที่มองหาจุดออนไลน์ที่จำเป็นต้องใช้ สถานการณ์ของฉันคือ: ฉันมี 1 เซิร์ฟเวอร์ (Windows Server) และฉันต้องการเรียกใช้เซิร์ฟเวอร์ FTP สองเครื่องและเว็บเซิร์ฟเวอร์สองเครื่อง ตอนนี้ฉันรู้ว่าฉันไม่สามารถโฮสต์สองแอปพลิเคชันบนพอร์ตเดียวกัน (พูดพอร์ต 80 สำหรับทั้งเว็บเซิร์ฟเวอร์และอื่น ๆ ) และดังนั้นฉันจะต้องใส่พวกเขาในพอร์ตที่แตกต่างกัน สำหรับสถานการณ์เช่นนี้ช่วยบอกฉันมีสองโดเมนย่อยและone.example.com ทั้งโดเมนย่อยเหล่านี้ชี้ไปที่อยู่two.example.com IP ของเซิร์ฟเวอร์ของฉัน 1.2.3.4ในสถานการณ์ปกติใด ๆ การเข้าถึงเว็บเซิร์ฟเวอร์และเซิร์ฟเวอร์ FTP อย่างใดอย่างหนึ่งผ่านโดเมนย่อยทั้งสองจะเป็นไปได้บนพอร์ตต่าง ๆ ที่ฉันได้กำหนดไว้ นี่ไม่ใช่สิ่งที่ฉันต้องการ สิ่งที่ฉันต้องการทำคือมีเซิร์ฟเวอร์ FTP หนึ่งเซิร์ฟเวอร์และหนึ่งเว็บเซิร์ฟเวอร์ในโดเมนย่อยหนึ่งโดเมนและที่พอร์ต 21 และ 80 และเซิร์ฟเวอร์ FTP และเซิร์ฟเวอร์อื่น ๆ บนโดเมนย่อยอื่นและอีกครั้งที่พอร์ต 21 และ 80 …

1
พร็อกซีย้อนกลับ Nginx ไม่ผ่าน CSS หรืออิมเมจ
ฉันพบปัญหานี้แล้วและพบการอ้างอิงจำนวนมาก แต่ไม่มีวิธีแก้ไขปัญหาหรือวิธีแก้ไขปัญหาที่ปรากฏในกรณีของฉัน ฉันมีตัวเทียบท่าที่มี Nginx ซึ่งทำหน้าที่เป็นพร็อกซีย้อนกลับ SSL สำหรับการตรวจสอบความถูกต้อง ฉันมีคอนเทนเนอร์ Apache ที่ให้บริการแอป Laravel ฉันได้รับ html เสมอ แต่ไม่มี css หรือรูปภาพ ใน Chrome ฉันได้รับ: ทรัพยากรตีความเป็น Stylesheet แต่ถ่ายโอนด้วย MIME type text / html: นี่คือ default.conf ของฉันใน nginx / sites / upstream app { server 172.18.0.6; } server { listen 443 ssl default_server; listen [::]:443 ssl …

1
ฉันสามารถแก้ไขไฟล์หน่วย Nginx Systemd (/lib/systemd/system/nginx.service) ที่จัดทำโดยแพคเกจ nginx ได้อย่างปลอดภัยหรือไม่
ฉันติดตั้ง Nginx พร้อมกับapt install nginxโฮสต์ Debian 9.2 แล้ว มันใช้งานได้ดี แต่เมื่อดูในวารสาร Systemd ด้วยjournalctl -u nginxฉันได้รับเฮฮา: เริ่มต้นเว็บเซิร์ฟเวอร์ประสิทธิภาพสูงและพร็อกซีเซิร์ฟเวอร์ย้อนกลับ ปรากฎว่า Systemd นำฟิลด์ "คำอธิบาย" กลับมาใช้ใหม่ในส่วน "[หน่วย]" ของไฟล์หน่วยและแน่นอนว่า/lib/systemd/system/nginx.serviceมันบอกว่า: คำอธิบาย = เว็บเซิร์ฟเวอร์ประสิทธิภาพสูงและพร็อกซีเซิร์ฟเวอร์ย้อนกลับ นี่เป็นเรื่องตลกโดยผู้ดูแล Debian Nginx หรือบุคคลอื่นหรือไม่ แม้แต่เอกสารประกอบของ Systemd ที่https://www.freedesktop.org/software/systemd/man/systemd.unit.html#Description=พูดว่า: ตัวอย่างที่ไม่ดีคือ "เซิร์ฟเวอร์ HTTP น้ำหนักเบาประสิทธิภาพสูง" (ทั่วไปเกินไป) ดังนั้นฉันจึงคิดที่จะแก้ไขฟิลด์ "คำอธิบาย" เพื่อให้มันมีค่ามากขึ้น ehm, คำอธิบาย แต่ฉันไม่แน่ใจว่ามันจะทำงานอย่างไรเมื่อฉันจะอัปเดตแพคเกจ nginx เป็นส่วนหนึ่งของการอัปเดตระบบหรืออัพเกรด - ฉันจะถูกเตือน ความขัดแย้งหากnginx.serviceพยายามติดตั้งเวอร์ชั่นอื่น? ฉันรู้ว่านี่เป็นกรณีของไฟล์การกำหนดค่าแพคเกจมันใช้กับไฟล์ประเภทอื่นจากแพ็คเกจหรือไม่

1
เปลี่ยนพอร์ตได้ทันที
ฉันมี API ซึ่งอ่านได้เฉพาะบนพอร์ต 80/443 และฉันมีแอพเซิร์ฟเวอร์ IIS ที่ควรพูดคุยกับ API นี้ แต่พอร์ต 80/443 ถูกใช้โดย Nginx มีบริการที่ใช้ข้อมูล API ที่ส่งมาจากเซิร์ฟเวอร์ของฉันบนพอร์ตอื่นและส่งไปยังบริการที่มีพอร์ต 80/443 หรือไม่ แฮ็คธรรมดานี้สามารถประหยัดเงินได้หลายร้อยดอลลาร์ในการบำรุงรักษาเซิร์ฟเวอร์อื่น
port  nginx  iis 

3
Nginx ให้บริการเฉพาะไฟล์คงที่ไม่รวม php
การกำหนดค่าปัจจุบันนี้ใกล้เคียงกับการทำงาน ปัญหาเดียวก็คือมันจะให้บริการไฟล์ php ของฉันเป็นไฟล์แบบคงที่ (แทนที่จะส่งพวกเขาออกไป apache2 ทำงานบนพอร์ต 81) ฉันรู้ว่ามันผิดปกติกับบรรทัดlocation ~ .+(?<!\.php)นี้ ฉันมีไวยากรณ์ lookahead เชิงลบผิดหรือไม่ server { listen 80; listen [::]:80; root /var/www/example.com; index index.php; server_name example.com; location ~ .+(?<!\.php) { try_files $uri $uri @php; } location @php { proxy_set_header X-Real-IP $remote_addr; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header Host $host; proxy_pass http://127.0.0.1:81; proxy_redirect …

1
การเข้าถึงโดเมน / เว็บไซต์รองจากโฟลเดอร์ย่อยของโดเมน
เรามีระบบการผลิตที่กำหนดเองโดยใช้ aws / ec2 / nginx / php-fpm ใน example.com เราต้องการตั้งค่าบล็อกภายใต้ example.com/blog (อาจใช้ wordpress CMS) อย่างไรก็ตามเพื่อเหตุผลด้านความปลอดภัยเราต้องการเรียกใช้ wordpress (หรือ CMS ใดก็ตามที่เราจะใช้) บนอินสแตนซ์ ec2 แยกต่างหาก (เซิร์ฟเวอร์) เพื่อลดผลกระทบหาก CMS ถูกบุกรุก ดังนั้นhttps://example.com/blogควรทำหน้าที่เป็น URL พร็อกซีสำหรับเว็บไซต์บล็อกซึ่งจะทำงานบนเซิร์ฟเวอร์อื่น ฉันกำลังดิ้นรนเพื่อกำหนดสิ่งนี้ในคำหลักสองสามคำเพื่อค้นหาคำตอบใน google ดังนั้นตัวชี้หรือวิธีแก้ปัญหาจะได้รับการชื่นชมอย่างมาก ขอขอบคุณ
proxy  nginx 

1
ฉันจะตรวจสอบได้อย่างไรว่า nginx reverse proxy + apache ทำงานอย่างถูกต้อง?
ฉันได้ติดตั้ง reverse proxy + apache2 + mod_php แล้ว ฉันจะยืนยันได้อย่างไรว่าฉันทำทุกอย่างถูกต้องและ nginx สามารถทำงานกับเนื้อหาคงที่เท่านั้นและ apache2 กับ php เท่านั้น เว็บแอปพลิเคชันคือ Magento ดังนั้นจึงมีเพียง 1 รายการจุด - index.php และใน index.php รวม statis ทั้งหมด
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.