คำถามติดแท็ก php-fpm

PHP-FPM (FastCGI Process Manager) เป็นอีกทางเลือกหนึ่งในการติดตั้ง PHP FastCGI พร้อมคุณสมบัติเพิ่มเติมที่มีประโยชน์สำหรับเว็บไซต์ทุกขนาดโดยเฉพาะไซต์ที่มีงานยุ่ง

3
วิธีรับ php-fpm เพื่อเข้าสู่ระบบ stdout / stderr เมื่อทำงานในคอนเทนเนอร์นักเทียบท่า
ฉันมี php-fpm ในคอนเทนเนอร์ docker และในDockerfileฉันแก้ไขไฟล์ config fpm ( /etc/php5/fpm/pool.d/www.conf) เพื่อตั้งค่าบันทึกการเข้าถึงเพื่อไปที่/var/log/fpm-access.logและบันทึกข้อผิดพลาดเพื่อไปที่/var/log/fpm-php.www.log: # Do some php-fpm config # Redirect worker stdout and stderr into main error log # Activate the fpm access log # Enable display errors # Enable the error log RUN sed -i '/^;catch_workers_output/ccatch_workers_output = yes' /etc/php5/fpm/pool.d/www.conf && \ sed …

2
หน้าว่าง: เวิร์ดเพรสบน nginx + php-fpm
ขอให้เป็นวันที่ดี. ในขณะที่โพสต์นี้กล่าวถึงการตั้งค่าที่คล้ายกันกับการให้บริการหน้าว่างในบางครั้งหลังจากที่ทำการติดตั้งสำเร็จฉันไม่สามารถให้บริการได้นอกจากหน้าเปล่า ไม่มีข้อผิดพลาดในปัจจุบัน/var/log/nginx/error.log, หรือ/var/log/php-fpm.log/var/log/nginx/us/sharonrhodes/blog/error.log การตั้งค่าของฉัน: Wordpress 3.0.4 nginx 0.8.54 php-fpm 5.3.5 (fpm-fcgi) Arch Linux ไฟล์การกำหนดค่า PHP-fpm.conf: [โลก] pid = run / php-fpm / php-fpm.pid error_log = log / php-fpm.log log_level = ประกาศ [www] Listen = 127.0.0.1:9000 Listen.owner = www Listen.group = www Listen.mode = 0660 ผู้ใช้ = www กลุ่ม = …

3
การบันทึกข้อผิดพลาด nginx / php-fpm
ฉันพยายามที่จะหาข้อผิดพลาด PHP ที่เกิดขึ้นในการตั้งค่าของฉัน ฉันกำลังเรียกใช้ nginx ในฐานะ reverse proxy ของ PHP-FPM แต่ฉันไม่เห็นข้อความE_NOTICEหรือE_WARNING หลายข้อความที่แอปของฉันกำลังทำงานอยู่ เหตุผลเดียวที่ฉันรู้ว่าพวกเขากำลังเกิดขึ้นคือการตอบสนองล้มเหลวและการติดตามสแต็ก NewRelic ใหม่ นี่คือการกำหนดค่าการบันทึก: nginx.conf proxy_intercept_errors on; fastcgi_intercept_errors on; php.ini error_reporting = E_ALL display_errors = Off display_startup_errors = Off log_errors = On log_errors_max_len = 1024 ignore_repeated_errors = Off ignore_repeated_source = Off report_memleaks = On track_errors = On error_log …
16 php  php-fpm  php5  logging 

2
PHP-FPM ไม่เริ่มทำงานโดยอัตโนมัติหลังจากรีบูต
ฉันใช้ PHP-FPM และ Nginx เป็นครั้งคราวด้วยเหตุผลใดก็ตามฉันต้องรีบูตเซิร์ฟเวอร์ เมื่อเซิร์ฟเวอร์ทำงานอีกครั้งบริการ nginx จะเริ่มทำงานโดยอัตโนมัติอย่างไรก็ตาม PHP-FPM จะไม่ทำงาน สิ่งนี้สามารถเห็นได้เมื่อฉันรันคำสั่งsudo /etc/init.d/php-fpm restartทันทีหลังจากรีบูตและรับผลลัพธ์: $ sudo /etc/init.d/php-fpm restart Stopping php-fpm: [FAILED] Starting php-fpm: [ OK ] เป็นพฤติกรรมที่คาดหวังหรือไม่ วิธีที่ดีที่สุดในการทำให้ PHP-FPM เริ่มต้นโดยอัตโนมัติคืออะไร มีตัวเลือกการกำหนดค่าที่ใด ๆ หรือฉันต้องเพิ่มคำสั่งลงในสคริปต์เริ่มต้นระบบ Linux อย่างใดอย่างหนึ่งหรือไม่ ขอบคุณ

7
Nginx + php5-fpm =“ ไม่พบไฟล์”
ฉันตีกำแพงระหว่างตั้งค่าไซต์โดยใช้ nginx / fpm หน้าแสดง "ไม่พบไฟล์" และสิ่งนี้จะปรากฏในข้อผิดพลาด nginx.log: FastCGI sent in stderr: "Primary script unknown" while reading response header from upstream ฉันใหม่สำหรับทั้ง nginx และ fpm และข้อความแสดงข้อผิดพลาดนั้นไม่มีความหมายสำหรับฉันเลยแม้แต่เครื่อง google ก็ยังไม่ได้ช่วย! ทุกคนสามารถปลดปล่อยแสงสว่างที่เกิดขึ้นได้หรือไม่?
14 nginx  php-fpm  socket 

1
กรณีแปลก ๆ ของ Mr. Time To First Byte
ฉันมีเว็บเซิร์ฟเวอร์โดยใช้ Linode 1024 VPS Ubuntu 11.10 Nginx 1.0.5 PHP 5.3.6 (ด้วย PHP-FPM, APC) วานิช 3.0.2 และมีบล็อกอีกสองสามตัวที่ใช้ WordPress 3.3.1 หนึ่งในนั้นคือบล็อกธรรมดาที่มีการกำหนดค่าเริ่มต้นชุดรูปแบบและเพียงโพสต์ "Hello World" เพื่อทดสอบเซิร์ฟเวอร์ อีกบล็อกหนึ่งถูกบล็อกจากเซิร์ฟเวอร์อื่นที่มีโพสต์เกือบ 10k และมีความคิดเห็นมากกว่า 10k บล็อกนี้มีเนื้อหาที่ไม่ซ้ำกัน 5 พันรายการต่อวัน เซิร์ฟเวอร์ให้ตัวเลขที่ดีในการทดสอบ ab สำหรับบล็อกทดสอบแต่การทดสอบเดียวกันกับบล็อกที่ทำโคลนนั้นเป็นไปไม่ได้: การทดสอบ ab โหลดเซิร์ฟเวอร์มากเกินไปและฉันต้องหยุดกระบวนการซึ่งทำให้ ab แสดงต่อไปผลลัพธ์ที่แย่มาก ฮ็อพแสดงให้เห็นถึงการโหลด "ปกติ" เมื่ออยู่ในการทำงานปกติแต่โหลดใหญ่ผิดปกติในระหว่างการทดสอบ ab มีสิ่งแปลกใหม่เกิดขึ้น (สำคัญที่สุดสำหรับฉัน): Time To First Byte สูงมากแต่หลังจากนั้นเว็บไซต์ก็โหลดเร็วมาก สามารถทดสอบได้อย่างง่ายดายด้วยบริการต่าง ๆ …

1
Apache MPMs - Worker vs Prefork
ฉันพยายามคิดว่า Apache MPM ที่ดีที่สุดที่ฉันสามารถติดตั้งบน VPS ของฉันได้คืออะไร ฉันเห็นมาตรฐานและ MPM Worker ทำงานได้ดีกว่า Prefork แต่ด้วยเหตุผลบางอย่างที่ทุกคนแนะนำให้ใช้ Prefork มากกว่า Worker สำหรับการตั้งค่า PHP นี่เป็นเพราะฟังก์ชั่น PHP บางอันไม่ปลอดภัยต่อเธรดหรือไม่? เพียง แต่setlocale()มาถึงใจ แต่ฉันจะใช้สถานที่เดียวกันในทุกกรณีดังนั้นผมจึงไม่คิดว่าจะเป็นปัญหา VPS ของฉันมีหน่วยความจำน้อยและฉันรู้สึกว่า MPM ของคนงานจะเหมาะกับความต้องการของฉันมากขึ้น แต่ฉันไม่แน่ใจ บางคนสามารถช่วยฉันตัดสินใจเรื่องนี้ได้ไหม ขอบคุณ! PS:ฉันก็ดู nginx และ lighttpd nginx ดูยอดเยี่ยม แต่ฉันพยายามหลีกเลี่ยงการคอมไพล์จากแหล่งที่มาและฉันยังไม่เข้าใจว่า php-fpm มีไว้เพื่ออะไร เกี่ยวกับ lighttpd - มันง่ายอย่างเหลือเชื่อในการติดตั้ง PHP / FCGI ด้วย แต่ฉันได้ยินมาว่าหน่วยความจำรั่ว สิ่งนี้ยังคงเป็นจริงหรือไม่?

2
php-fpm: หลายร้อยวินาทีในบันทึก
ฉันมีเว็บเซิร์ฟเวอร์ nginx + php-fpm ดังนั้นฉันสังเกตเห็นใน php5-fpm.log หลายบรรทัดที่แปลก: [03-Sep-2013 09:25:23] NOTICE: [pool www] child 23999 exited with code 0 after 321.832329 seconds from start [03-Sep-2013 09:25:23] NOTICE: [pool www] child 24082 started [03-Sep-2013 09:25:41] NOTICE: [pool www] child 24032 exited with code 0 after 259.247887 seconds from start [03-Sep-2013 09:25:41] NOTICE: …
12 php-fpm 

6
ทำไมไฟล์ PHP ถึงถูกดาวน์โหลดแทนที่จะประมวลผลโดย Nginx
ฉันได้เห็นปัญหาเดียวกันและความละเอียดหลายประการที่ชี้ไปที่การเพิ่มตัวจัดการประเภท แต่นั่นก็สำหรับ Apache ฉันใช้ Arch Linux, Nginx, PHP และ PHP-FMP และฉันไม่สามารถหาสาเหตุที่ไฟล์ php ดาวน์โหลดแทนที่จะทำงาน นี่คือ nginx.conf ของฉัน: #user http; worker_processes 1; #error_log logs/error.log; #error_log logs/error.log notice; #error_log logs/error.log info; #pid logs/nginx.pid; events { worker_connections 1024; } http { include mime.types; default_type application/octet-stream; #log_format main '$remote_addr - $remote_user [$time_local] "$request" ' # …
12 php  nginx  php-fpm 

2
symgin แคช Nginx
ฉันมีระบบการปรับใช้บนเว็บเซิร์ฟเวอร์ของฉันทุกครั้งที่มีการปรับใช้แอพมันจะสร้างไดเรกทอรีเวลาบันทึกใหม่และ symlink "ปัจจุบัน" ไปยังไดเรกทอรีใหม่ ทั้งหมดนี้ใช้งานได้ดีและยอดเยี่ยมใน apache แต่บนเซิร์ฟเวอร์ nginx ใหม่ที่ฉันได้ตั้งค่าดูเหมือนว่าสคริปต์จากการปรับใช้ "เก่า" จะถูกเรียกใช้แทนที่จะเชื่อมโยงใหม่ ฉันได้อ่านบทช่วยสอนและโพสต์เกี่ยวกับวิธีแก้ไขปัญหานี้ แต่มีข้อมูลไม่มากและดูเหมือนว่าจะไม่มีอะไรทำงาน นี่คือไฟล์ vhost ของฉัน: server { listen 80; server_name ~^(www\.)?(?<sname>.+?).testing.domain.com$; root /var/www/$sname/current/public; index index.html index.htm index.php; location / { try_files $uri $uri/ /index.php$is_args$args; } location ~* \.(jpg|jpeg|gif|png|bmp|ico|pdf|flv|swf|exe|html|htm|txt|css|js) { add_header Cache-Control public; add_header Cache-Control must-revalidate; expires 7d; } location …
12 nginx  php-fpm  cache  php7 

2
แทนที่ค่าคอนฟิก php-fpm pool ด้วยไฟล์อื่น
ต้องปรับแต่งการกำหนดค่าพูล php-fpm ของเซิร์ฟเวอร์ใหม่ฉันสงสัยว่ามันเป็นไปได้ / อนุญาต / แนะนำให้มีไฟล์พูลใหม่ซึ่งชื่อจะเรียงตามตัวอักษรหลังจากเดิมซึ่งมีเฉพาะค่าที่แทนที่การตั้งค่าเริ่มต้น การกำหนดค่าเดิมในชื่อ/etc/php/7.0/fpm/pool.dwww.conf ดูเหมือนว่าตามหน้าเว็บที่เกี่ยวข้องกับการติดตั้งวิศวกรจะปรับเปลี่ยนต้นฉบับโดยตรง (บันทึกสำเนาของค่าเริ่มต้น) เช่น [www] ... user www-data group www-data pm.max_children 2 ให้หลังจากการดัดแปลง [www] ... user myapp ; was www-data group myapp ; was www-data pm.max_children 8 ; was 2 แต่ดูเหมือนว่าจะเป็นงานที่ต้องทำซ้ำหลังจากการอัพเกรด php-fpm ครั้งถัดไป (นอกจากนี้การกำหนดค่าอยู่ใน7.0เส้นทางที่กังวล) แทนที่จะแก้ไขไฟล์ต้นฉบับฉันต้องการเก็บไว้ไม่เปลี่ยนแปลงและเพิ่มอีกไฟล์หนึ่งบอกwwwmyapp.confว่าจะประกาศพูลเดียวกันและมีเฉพาะค่าที่เปลี่ยนไป ใน wwwmyapp.conf [www] ; same pool! user myapp …

1
หน้าว่าง example.com/phpmyadmin พร้อมข้อผิดพลาดในคอนโซลของเบราว์เซอร์
ฉันได้ติดตั้ง phpmyadmin และเชื่อมโยงกับเซิร์ฟเวอร์ LEMP ของฉัน (php 7) แต่เมื่อฉันได้รับชื่อโฮสต์ / phpmyadmin จะส่งคืนหน้าว่างด้วยไอคอน phpmyadmin บนแถบชื่อเรื่อง และข้อผิดพลาด 3 ข้อในคอนโซลของเบราว์เซอร์: ไม่สามารถโหลดทรัพยากร: net :: ERR_INCOMPLETE_CHUNKED_ENCODING Uncaught ReferenceError: $ ไม่ได้ถูกกำหนดไว้ Uncaught ReferenceError: PMA_commonParams ไม่ได้ถูกกำหนดไว้ ฉันได้ลองวิธีแก้ปัญหาหลายอย่างแล้ว แต่ไม่พบปัญหา :( กำหนดค่าเซิร์ฟเวอร์: server { # listen 80 ; # listen [::]:80 default_server; # SSL configuration # listen 443 ssl default_server; …

5
Docker - ปรับ nginx และ php-fpm แยกกัน
ฉันได้เล่นกับนักเทียบท่าและนักเทียบท่าเขียนและมีคำถาม ปัจจุบันนักเทียบท่าของฉัน-compose.yml มีลักษณะเช่นนี้: app: image: myname/php-app volumes: - /var/www environment: <SYMFONY_ENVIRONMENT>: dev web: image: myname/nginx ports: - 80 links: - app volumes_from: - app แอพมี php-fpm ที่พอร์ต 9000 และรหัสแอปพลิเคชันของฉัน เว็บคือ nginx ที่มีการตั้งค่าบิตน้อย ฟังก์ชั่นนี้เป็นไปตามที่ฉันคาดหวังอย่างไรก็ตามเพื่อเชื่อมต่อ nginx กับ php-fpm ฉันมีบรรทัดนี้: fastcgi_pass app:9000; ฉันจะขยายขนาดนี้ได้อย่างมีประสิทธิภาพได้อย่างไร ตัวอย่างเช่นถ้าฉันต้องการให้มีหนึ่ง nginx container ที่ทำงานอยู่ แต่สาม app container ที่ใช้งานอยู่ผมจะมีอินสแตนซ์ php-fpm สามตัวที่พยายามฟังบนพอร์ต …
11 nginx  php  php-fpm  docker 

2
Nginx ส่ง 404 เฉพาะสคริปต์ php โดยใช้ php-fpm
ผมได้ติดตั้งเซิร์ฟเวอร์ทดสอบโดยใช้+nginx php-fpmฉันได้ลองทำสิ่งต่อไปนี้แล้ว: Nginx + Php5-fpm ไม่แสดงผลไฟล์ php nginx + php fpm -> 404 หน้า php - ไม่พบไฟล์ เมื่อเข้าถึงไฟล์ PHP nginx จะแสดงข้อผิดพลาด 404 สรุปสิ่งที่ฉันได้ลอง: การติดตั้ง การเปลี่ยนสิทธิ์ของสคริปต์ (เปลี่ยนเป็น0777) fastcgi_intercept_errors on. ตรวจสอบrootคำสั่งในระดับนี้server, และlocationlocation ~ \.php ตรวจสอบfastcgi_param SCRIPT_FILENAMEคำสั่ง เซิร์ฟเวอร์ส่งคืน 404 .phpสคริปต์เปิด (และบนเท่านั้น) ฉันสามารถเปลี่ยนชื่อพวกเขาเป็น.htmlและพวกเขาจะไม่เป็นไร ฉันจะไปเกี่ยวกับเรื่องนี้ได้อย่างไร นี่คือของฉันnginx.conf: user nginx; worker_processes 1; error_log /var/log/nginx/error.log; pid /run/nginx.pid; events …
11 nginx  php-fpm 

4
การตั้งค่า php.ini ที่แตกต่างกันสำหรับ virtualhost ต่างๆ (php-fpm)
ฉันค้นหา allot ที่นี่ใน serverFault และพบวิธีแก้ปัญหานี้ ... การรวมสิ่งนี้ไว้ในโฮสต์เสมือนควรทำงาน: php_admin_flag register_argc_argv = On php_value max_execution_time = 1000 php_value session.gc_maxlifetime = 15000 php_admin_flag magic_quotes_gpc = on แต่กว่าจะเริ่มฉันฉันไม่ได้ใช้ mod_php เลย ฉันติดตั้ง php-fpm แล้ว และฉันไม่พบข้อมูลใด ๆ หากวิธีการของฉันใช้งานได้หรือหากมีวิธีอื่น ... ดังนั้นฉันจะทำอย่างไรถ้าฉัน php-fpm และต้องการมีการตั้งค่าที่แตกต่างกันสำหรับ virtualhost? เอส

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