Làm cách nào để ngừng sử dụng php-fpm trên Apache? Tôi đã cố gắng khắc phục sự cố đang chạy của máy chủ là nó đang chạy trên CENTOS 6 và con rối chỉ hoạt động trên CENTOS 6. Tôi đang cố gắng tìm hiểu tại sao máy chủ không chạy sau khi tôi sao chép cài đặt và sau đó tôi đã làm:
sudo netstat -plnt
điều đó cho tôi thấy tôi đang sử dụng php-fpm và trên máy chủ nơi nó đang hoạt động, tôi không chạy nó. Tôi đã bối rối, vì các cấu hình httpd giống với lần trước tôi đã kiểm tra, vì vậy tôi đang tự hỏi làm thế nào để chuyển từ php-fpm sang php để xem liệu tôi có thể chạy Apache trên máy chủ mới hay không. Tôi đã tắt nó đi:
sudo dịch vụ php-fpm dừng
Nhưng tôi vẫn nhận được 500 từ véc ni. Tôi không chắc liệu mình có bỏ sót điều gì trong cấu hình httpd hay không, nhưng máy chủ mới và cũ có cấu hình khá giống nhau.
Tôi có một php.conf:
#
# PHP là ngôn ngữ kịch bản nhúng HTML cố gắng tạo ra nó
# dễ dàng cho các nhà phát triển viết các trang web được tạo động.
#
<IfModule prefork.c>
LoadModule php7_module modules/libphp7.so
</IfModule>
<IfModule !prefork.c>
LoadModule php7_module modules/libphp7-zts.so
</IfModule>
#
# Khiến trình thông dịch PHP xử lý các tệp có phần mở rộng .php.
#
AddHandler php7-script .php
AddType văn bản/html .php
#
# Thêm index.php vào danh sách các tệp sẽ được dùng làm thư mục
# chỉ mục.
#
Directory Index index.php
#
# Bỏ ghi chú dòng sau để cho phép PHP in đẹp .phps
# tệp dưới dạng mã nguồn PHP:
#
#AddType ứng dụng/x-httpd-php-source .phps
#
# Tùy chọn cấu hình PHP cụ thể của Apache
# những cái đó có thể được ghi đè trong mỗi vhost được định cấu hình
#
"tệp" php_value session.save_handler
php_value session.save_path "/var/lib/php/session"
php_value Soap.wsdl_cache_dir "/var/lib/php/wsdlcache"
và một conf fast_cgi:
# CẢNH BÁO: đây là bùn:
## Người dùng/Nhóm cho httpd cần được đặt trước khi chúng tôi có thể tải mod_fastcgi,
## nhưng /etc/httpd/conf.d/fastcgi.conf trên RHEL được tải trước
## /etc/httpd/conf/httpd.conf, vì vậy chúng ta cần đặt chúng ở đây :(
## mod_fcgid không có lỗi này,
## nhưng nó không xử lý các tiến trình PHP con một cách thích hợp theo
## http://serverfault.com/questions/303535/a-single-php-fastcgi- process-blocks-all-other-php-requests/305093#305093
người dùng apache
Nhóm apache
LoadModule mô-đun fastcgi_module/mod_fastcgi.so
# dir cho các tệp ổ cắm IPC
FastCgiIpcDir /var/run/mod_fastcgi
# bọc tất cả lệnh gọi tập lệnh fastcgi trong suexec
FastCgiWrapper Tắt
# FastCgiConfig toàn cầu có thể bị ghi đè bởi các tùy chọn FastCgiServer trong cấu hình vhost
FastCgiConfig -thời gian chờ không hoạt động 120 -maxClassProcesses 1
# cấu hình PHP mẫu
# xem /usr/share/doc/mod_fastcgi-2.4.6 để biết tập lệnh trình bao bọc php
# đừng quên tắt mod_php trong /etc/httpd/conf.d/php.conf!
#
# để bật phân tách đặc quyền, hãy thêm chỉ thị "SuexecUserGroup"
# và chọn tập lệnh trình bao bọc php và thư mục mẹ tương ứng
# xem thêm http://www.brandonturner.net/blog/2009/07/fastcgi_with_php_opcode_cache/
#
#FastCgiServer /var/www/cgi-bin/php-wrapper
#AddHandler php-fastcgi .php
#Hành động php-fastcgi /cgi-bin/php-wrapper
#AddType ứng dụng/x-httpd-php .php
#DirectoryIndex index.php
#
#<Vị trí /cgi-bin/php-wrapper>
# Lệnh từ chối, cho phép
# Tư chôi tât cả
# Cho phép từ env=REDIRECT_STATUS
# Tùy chọn ExecCGI
# SetHandler fastcgi-script
#</Vị trí>
và một fcgi conf:
<IfModule mod_fastcgi.c>
Alias /php5-fcgi-staging03 /usr/lib/cgi-bin/php5-fcgi-staging03
FastCgiExternalServer /usr/lib/cgi-bin/php5-fcgi-staging03 -socket /var/run/php-fpm/php5-fcgi-staging03.sock -pass-header Authorization -idle-timeout 300
</IfModule>
Nhận xét về php5-fcgi-staging03 mang lại cho tôi:
Không tìm thấy
Không tìm thấy URL được yêu cầu /php5-fcgi-staging03/index.php trên máy chủ này.