MRatWork Forum by Mustafa Ramadhan - Internal Server Error setelah ganti ke PHP-FPM

Sponsor:
Server and Web Integrator
Link:
6.5.0 or 7.0.0
Click for "How to install"
Donation/Sponsorship:
Kloxo-MR is open-source.
Donate and or Sponsorship always welcome.
Click to:

MRatWork Forum | Please login or register. | 2017-11-07, 19:38:48

- MRatWork Forum by Mustafa Ramadhan »
- Language Specific Discussions »
- Indonesia Users »
- Internal Server Error setelah ganti ke PHP-FPM

« previous next »

- Print

Pages: [1] 2 Go Down

### Author Topic: Internal Server Error setelah ganti ke PHP-FPM (Read 4709 times)

0 Members and 1 Guest are viewing this topic.

#### redpages

- Senior Member
- Posts: 316
- Karma: +0/-0

##### Internal Server Error setelah ganti ke PHP-FPM

« on: 2013-09-18, 07:34:33 »
Salam teman2, ini soal PHP-FPM.
setelah switch ke tipe php web saya "internal server error". saya sudah fixweb,php, dst hasilnya tetap error tersebut.
Adakah yang perlu disetting khusus saat pake PHP-FPM?
VPS saya: proxinginx, php54,php-fpm,Mysql,xcache,memcached. Core 4, RAM 768MB. Centos 5.9
VPS dipakai untuk WP Multisite dgn jumlah user 800 blog, besar DB .sql sudah mendekati 1GB
Terima kasih atas masukannya.
« Last Edit: 1970-01-01, 01:00:00 by Guest »
Logged

#### zenkul

- Global Moderator
- Master
- Posts: 383
- Karma: +3/-0

##### Re: Internal Server Error setelah ganti ke PHP-FPM

« Reply #1 on: 2013-09-18, 10:22:57 »
bro, pastikan dulu apakah php-fpm sudah terinstall dengan benar
kalau web bisa dibuka kemudian macet, restart - macet lagi = ini yg kemungkinan harus di optimize
tapi kalau web segitu, mungkin perlu ditambah sedikit 'max children', kalau tidak salah bab ini sudah pernah dibahas
# walah kelewat
800 blog = ram 768 :arrow: nggat tahu deh, bagaimana akibatnya bila semua blog tersebut di-mount oleh php-fpm
tunggu Clue dari para Suhu ajah :mrgreen:
« Last Edit: 1970-01-01, 01:00:00 by Guest »
Logged
easy, secure and speed up web panel ===> Kloxo-MR

#### redpages

- Senior Member
- Posts: 316
- Karma: +0/-0

##### Re: Internal Server Error setelah ganti ke PHP-FPM

« Reply #2 on: 2013-09-18, 13:35:24 »
nah ya itu, dari dulu saya pengin pake php-fpm, gayung bersambut saat KLOXO-MR menyediakan type tersebut. saya kira bisa otomatis pake, ternyata masih ada settingan2 manual. Secara saya susah memahami settinga php-fpm tersebut. Adakah referensinya, terutama untuk menangani WP Multisite.
Sementara saat ini masih saya balikin ke php-ruid
« Last Edit: 1970-01-01, 01:00:00 by Guest »
Logged

#### zenkul

- Global Moderator
- Master
- Posts: 383
- Karma: +3/-0

##### Re: Internal Server Error setelah ganti ke PHP-FPM

« Reply #3 on: 2013-09-18, 14:28:00 »
ya memang otomatis,
tapi kalau yang berkebutuhan khusus konfig default memang perlu disesuaikan, seperti 'php-memory-limit' dan 'max-children'
seperti sering diterangkan, caranya :
Quote

> copy file 'php53-fpm-pool.conf.tpl' kemudian rename menjadi 'custom.php53-fpm-pool.conf.tpl' dan tempatkan pada folder yg sama di "/home/php-fpm/tpl"

nah file custom tersebut yang di edit misalnya memory limit menjadi 96 dan max children menjadi 13 ((untuk memory 1G perkiraan maksimal tidak lebih 25 max children, tapi itu juga tergantung, jadi perkiraan aman adalah setengahnya yaitu menjadi 13))
dan harus dipastikan dulu apakah php-fpm memang sudah runing, untuk memastikan semua yaitu dengan "sh /script/restart-all" juga fix
dan kalau sudah jalan kemudian ada web error kan di situ ada 'pesan' juga bisa di lihat log error pada panel kloxo-mr
dari situ bisa diagnosis dan kemudian ditentukan 'obat'nya
dan jangan terlalu sering pindah-pindah config pilihan, mantapkan dulu pilihan-nya, ... karena cara kerja pindah adalah 'remove' 'install' sehingga ada kemungkinan perpindahan tsb ada sesuatu yang nyangkut
« Last Edit: 1970-01-01, 01:00:00 by Guest »
Logged
easy, secure and speed up web panel ===> Kloxo-MR

#### redpages

- Senior Member
- Posts: 316
- Karma: +0/-0

##### Re: Internal Server Error setelah ganti ke PHP-FPM

« Reply #4 on: 2013-09-18, 16:08:25 »
makasih pencerahannya.
kalau website masih 500 internal server error setelah di switch ke php-fpm. itu ada kesalahan di settingan nginxnya atau di apachenya? dan dimana settingnya. Saya nginxpoxi
Terima kasih bantuannya
« Last Edit: 1970-01-01, 01:00:00 by Guest »
Logged

#### MRatWork

- Administrator
- The Elite
- Posts: 15,381
- Karma: +112/-9
- Gender:

##### Re: Internal Server Error setelah ganti ke PHP-FPM

« Reply #5 on: 2013-09-18, 17:02:22 »
Biasanya bisa dilihat sepintas jika jalankan 'sh /script/restart-all' di ssh. Tetapi bisa jadi kesalahan bisa di application (misalnya wordpress) sendiri, misalnya .htaccess yang tidak benar dan atau plugin yang ngaco.
Pernah terjadi, wordpress multisite saya mengalami ini setelah install plugin tertentu. Dalam kasus ini website yang tidak pakai wordpress multisite ini berjalan normal.
« Last Edit: 1970-01-01, 01:00:00 by Guest »
Logged
..:: MRatWork (Mustafa Ramadhan Projects) ::..
-- Server/Web-integrator - Web Hosting (Kloxo-MR READY!) --

#### redpages

- Senior Member
- Posts: 316
- Karma: +0/-0

##### Re: Internal Server Error setelah ganti ke PHP-FPM

« Reply #6 on: 2013-09-19, 19:32:34 »
boleh minta saran, apakah nginxproxi, php 54, php-fpm + xcache merupakan komposisi ideal untuk WP Multisite? jika benar nilai berapa yg ideal untuk pm.max_children, pm.start_servers, dst.
Spec VPS saya : Core 4, RAM 1 GB. user Multisite (subdomain) = 700-800an, tapi yg aktif ngeblog tidak sampai 30 anak.
Quote from: "MRatWork"

> Pernah terjadi, wordpress multisite saya mengalami ini setelah install plugin tertentu. Dalam kasus ini website yang tidak pakai wordpress multisite ini berjalan normal.

« Last Edit: 1970-01-01, 01:00:00 by Guest »
Logged

#### zenkul

- Global Moderator
- Master
- Posts: 383
- Karma: +3/-0

##### Re: Internal Server Error setelah ganti ke PHP-FPM

« Reply #7 on: 2013-09-19, 21:01:15 »
default start server pada kloxo-mr sudah cukup tinggi, dengan kunjungan website 25 ribu lebih perhari masih memadai
default max children sudah mulai perlu di oprek bila sudah 3 ribu menuju 10 ribu, yang high trepik gitulah, kalau tidak sesuai (terlalu kecil) maka php-fpm akan macet, minta direstart, jalan sebentar lalu macet lagi
tapi jumlah max children juga berpengaruh terhadap kecepatan web, kalau makin tinggi juga semakin menghisap memory
jadi 'max children' ini yang sering harus disesuaikan dengan kebutuhan masing-masing
memory limit, sesuai kebutuhan web
kesimpulan : posisi default masih ok
(itu berdasarkan membaca dari google, nggak pernah mengalami)
« Last Edit: 1970-01-01, 01:00:00 by Guest »
Logged
easy, secure and speed up web panel ===> Kloxo-MR

#### redpages

- Senior Member
- Posts: 316
- Karma: +0/-0

##### Re: Internal Server Error setelah ganti ke PHP-FPM

« Reply #8 on: 2013-09-26, 06:42:05 »
Saya coba switch lagi ke PHP-FPM tapi masih internal server error . Padahal saat Saya jalankan /script/restart-all sudah OK semua, termasuk php-fpm nya.
VPS saya 4 CORE, 1 MB, nginxproxi, php 53u, saat ini kembali ke php-ruid2 dan normal. VPS berisi website WP Multisite jenis subdomain (600 user blog) dengan trafik yg biasa saja (masih rendah). Tampilan Internal server error sudah saya dapat saat mengakses http://domain.com/phpinfo.php
config custom.php53-fpm-pool.conf.tpl
Code: [Select]

    <?php
        $userinfo = posix_getpwnam($user);

        if ($user === 'apache') {
            // MR -- for future purpose, apache user have uid 50000
            $fpmport = 50000;
        } else {
            $userinfo = posix_getpwnam($user);
            $fpmport = (50000 + $userinfo['uid']);
        }

        if ($user == 'apache') {
            $pool = 'default';
        } else {
            $pool = $user;
        }

        $startservers = '3';
        $minspareservers = '1';
        $maxspareservers = '4';
        $maxchildren = '20';
    ?>
    [<?php echo $pool; ?>]
    listen = 127.0.0.1:<?php echo $fpmport; ?>

    listen.backlog = -1
    listen.allowed_clients = 127.0.0.1
    user = <?php echo $user; ?>

    group = <?php echo $user; ?>

    pm = dynamic
    pm.max_children = <?php echo $maxchildren; ?>

    pm.start_servers = <?php echo $startservers; ?>

    pm.min_spare_servers = <?php echo $minspareservers; ?>

    pm.max_spare_servers = <?php echo $maxspareservers; ?>

    pm.max_requests = 2000
    ;pm.status_path = /status
    ;ping.path = /ping
    ;ping.response = pong
    request_terminate_timeout = 120s
    request_slowlog_timeout = 30s
    slowlog = /var/log/php-fpm/slow.log
    rlimit_files = 1024
    rlimit_core = 0
    ;chroot =
    ;chdir = /var/www
    catch_workers_output = yes
    security.limit_extensions = .php .php3 .php4 .php5

    env[HOSTNAME] = $HOSTNAME
    env[PATH] = /usr/local/bin:/usr/bin:/bin
    env[TMP] = /tmp
    env[TMPDIR] = /tmp
    env[TEMP] = /tmp

    ;php_admin_value[sendmail_path] = /usr/sbin/sendmail -t -i -f webmaster@domain.com
    ;php_flag[display_errors] = off
    php_admin_value[error_log] = /var/log/php-fpm/error.log
    php_admin_value[session.save_path] = /var/lib/php/session
    php_admin_flag[log_errors] = on
    php_admin_value[memory_limit] = 128M

config /etc/nginx/nginx.conf
Code: [Select]

    user nginx;

    worker_processes 4;
    worker_rlimit_nofile 400000;

    pid /var/run/nginx.pid;

    events {
        worker_connections 2048;

        use epoll;
    }

    http {
        add_header Cache-Control public;

        server_names_hash_max_size 4096;
        server_names_hash_bucket_size 2048;

        types_hash_bucket_size 64;
        types_hash_max_size 2048;

        client_header_buffer_size 2k;
        client_header_timeout 180s;
        client_body_timeout 180s;
        send_timeout 180s;

        client_max_body_size 64M;
        client_body_buffer_size 128k;

        sendfile        on;
        tcp_nopush      on;
        tcp_nodelay     on;
        server_tokens   on;

        include '/etc/nginx/conf.d/*.conf';
    }

Config my.cnf
Code: [Select]

    [mysqld]

    ## General
    datadir                         = /var/lib/mysql
    tmpdir                          = /var/lib/mysqltmp
    socket                          = /var/lib/mysql/mysql.sock
    skip-name-resolve
    sql-mode                        = NO_ENGINE_SUBSTITUTION
    #event-scheduler                = 1

    ## Cache
    thread-cache-size               = 16
    table-open-cache                = 4096
    table-definition-cache          = 2048
    query-cache-size                = 32M
    query-cache-limit               = 1M

    ## Per-thread Buffers
    sort-buffer-size                = 1M
    read-buffer-size                = 1M
    read-rnd-buffer-size            = 1M
    join-buffer-size                = 1M

    ## Temp Tables
    tmp-table-size                  = 32M
    max-heap-table-size             = 64M

    ## Networking
    back-log                        = 100
    #max-connections                = 200
    max-connect-errors              = 10000
    max-allowed-packet              = 16M
    interactive-timeout             = 3600
    wait-timeout                    = 600

    ### Storage Engines
    #default-storage-engine         = InnoDB
    innodb                          = FORCE

    ## MyISAM
    key-buffer-size                 = 64M
    myisam-sort-buffer-size         = 128M

    ## InnoDB
    #innodb-buffer-pool-size        = 128M
    #innodb-log-file-size           = 100M
    #innodb-log-buffer-size         = 8M
    #innodb-file-per-table          = 1
    #innodb-open-files              = 300

    ## Replication
    server-id                       = 1
    #log-bin                        = /var/log/mysql/bin-log
    #relay-log                      = /var/log/mysql/relay-log
    relay-log-space-limit           = 16G
    expire-logs-days                = 7
    #read-only                      = 1
    #sync-binlog                    = 1
    #log-slave-updates              = 1
    #binlog-format                  = STATEMENT
    #auto-increment-offset          = 1
    #auto-increment-increment       = 2

    ## Logging
    #log-output                      = FILE
    #slow-query-log                  = 1
    #slow-query-log-file             = /var/log/mysql/slow-log
    #log-slow-slave-statements
    #long-query-time                 = 2

    [mysqld_safe]
    log-error                       = /var/log/mysqld.log
    open-files-limit                = 65535

    [mysql]
    no-auto-rehash

« Last Edit: 1970-01-01, 01:00:00 by Guest »
Logged

#### zenkul

- Global Moderator
- Master
- Posts: 383
- Karma: +3/-0

##### Re: Internal Server Error setelah ganti ke PHP-FPM

« Reply #9 on: 2013-09-26, 07:40:10 »
bro, kalau untuk production site jangan di-'mainin' deh, yg pasti-pasti ajah (hanya saran lho)
untuk my.cnf sebaiknya dibikin standar yang small
Code: [Select]

    cp -f /usr/share/mysql/my-small.cnf /etc/my.cnf

lihat http://forum.lxcenter.org/index.php?t=m ... 2&start=0&
terus database di-convert jadi myisam, ... saya tidak tahu untuk 'skip innodb' apakah masih bisa dibiarkan, kalau dulu bisa.
karena memory < 1G yang paling mungkin adalah dengan MyIsam
« Last Edit: 1970-01-01, 01:00:00 by Guest »
Logged
easy, secure and speed up web panel ===> Kloxo-MR

#### zenkul

- Global Moderator
- Master
- Posts: 383
- Karma: +3/-0

##### Re: Internal Server Error setelah ganti ke PHP-FPM

« Reply #10 on: 2013-09-26, 07:59:30 »
ayo coba berhitung :?:
13 max children sekitar : 230 M
DjBdns sekitar : 25 M (jangan Bind karena bisa 100m lebih)
kloxo-mr sekitar : 30 M
Mysql dll. (dg catatan yg small) sekitar : 160
-----
jadi total sekitar 450M untuk start awal server, jadi masih ada cadangan 550 M untuk cache dll
« Last Edit: 1970-01-01, 01:00:00 by Guest »
Logged
easy, secure and speed up web panel ===> Kloxo-MR

#### redpages

- Senior Member
- Posts: 316
- Karma: +0/-0

##### Re: Internal Server Error setelah ganti ke PHP-FPM

« Reply #11 on: 2013-09-26, 09:36:12 »
ini bukan untuk produksi, tapi untuk ngeblog anak2 di komunitas kami, plus untuk 1 situs sekolah.
Memorynya pas 1GB, apakah tetap pake yg my-small.cnf?
@zenkul
Menghintung 13 max children ketemu 230MB dari mana ya? apakah besaran max children bisa meningkatkan kecepatan? maaf saya newbie dan memang ingin mempelajari php-fpm :-)
Djbdns sering gagal failed di kloxo MR saya
Quote from: "zenkul"

> bro, kalau untuk production site jangan di-'mainin' deh, yg pasti-pasti ajah (hanya saran lho)
> untuk my.cnf sebaiknya dibikin standar yang small
> Code: [Select]

>     cp -f /usr/share/mysql/my-small.cnf /etc/my.cnf

> lihat http://forum.lxcenter.org/index.php?t=m ... 2&start=0&
> terus database di-convert jadi myisam, ... saya tidak tahu untuk 'skip innodb' apakah masih bisa dibiarkan, kalau dulu bisa.
> karena memory < 1G yang paling mungkin adalah dengan MyIsam

« Last Edit: 1970-01-01, 01:00:00 by Guest »
Logged

#### zenkul

- Global Moderator
- Master
- Posts: 383
- Karma: +3/-0

##### Re: Internal Server Error setelah ganti ke PHP-FPM

« Reply #12 on: 2013-09-26, 17:07:56 »
@ yes, bro yakin dalam kisaran itu, .. berdasarkan clue dari Mratwork, juga dari google ... dan lebih yakin lagi pengalaman kemarin saya nge-set 75 max children ternyata konsumsi php-fpm dalam kisaran 1.200 mb padahal hanya 4 web kecil. (ada software untuk ngecek itu, tapi saya sudah lupa)
...........
jadi saya yakin itu prinsip-nya harus 'small', :!: tapi variasi konfig-nya bisa berbeda
tapi kalau misalnya saya, lebih baik yg di template supaya langsung jalan & meminimalkan resiko macet
« Last Edit: 1970-01-01, 01:00:00 by Guest »
Logged
easy, secure and speed up web panel ===> Kloxo-MR

#### redpages

- Senior Member
- Posts: 316
- Karma: +0/-0

##### Re: Internal Server Error setelah ganti ke PHP-FPM

« Reply #13 on: 2013-09-29, 07:20:10 »
saya sudah berhasil menjalankan nginx bersama php-fpm worker. caranya radikal. Reinstall VPS! .
cuma saya bingung dengan paramater "upload_max_filesize" di phpinfo. Dimana saya menggantinya? termasuk max_execution_time, memory_limit, dsb.
Btw, apa beda php-fpm event dengan worker? mana yang sekiranya cocok untuk WP Multisite (subdomain)?
Terima kasih pencerahannya
« Last Edit: 1970-01-01, 01:00:00 by Guest »
Logged

#### zenkul

- Global Moderator
- Master
- Posts: 383
- Karma: +3/-0

##### Re: Internal Server Error setelah ganti ke PHP-FPM

« Reply #14 on: 2013-09-29, 13:36:15 »
penafsiran kata per-kata (kira-kira )
Intinya adalah pembatasan supaya tidak terjadi kudeta resource memory dll, ... dan web cukup lancar
# ukuran file yang bisa di-upload lewat php = dalam website (bukan ftp)
# maksimal waktu eksekusi php (halaman web) = standar basic 60, jadi default kloxo-mr sudah cukup tinggi.
coba bayangkan kalau misalnya ada yang iseng bikin halaman web sebesar 10m, maka kalau waktu mencukupi maka bisa di-load dg sempurna, dan akibatnya akan banyak menghisap memory. ..... kalau waktu dibatasi maka halaman web tidak terbuka dg sempurna.
# max-memory-limit juga begitu, 128m adalah standar pro, sangat jarang shared hosting yg menyediakan sebesar itu. sekali lagi intinya adalah supaya tidak terjadi kudeta resource. <<saran : jangan lebih 128m>> ada juga sih standar super 256m atau lebih tapi itu untuk kelas 'kakap'
# event vs worker : kek-nya sesuai arti kata, event berarti kegiatan yang banyak (high trepik)
=============
masalah max-children
mungkin ini lebih pada masalah skalabilitas, kalau banyak web yg super high trepik, maka pegawai yang dipekerjakan harus lebih banyak. dan tentu saja server-nya harus memadai.
kalau yg mini trepik, bisa saja di-set besar, tentu evektif : page load mungkin bisa lebih kenceng .... tapi itu kan nggak efisien. ibarat membunuh nyamuk dengan bom. .... nggak apa-apa juga juga sich, kalau itu server besar yang lagi santai
=============
sekali lagi, itu adalah pembatasan (dan itu hanya opini saya)
« Last Edit: 1970-01-01, 01:00:00 by Guest »
Logged
easy, secure and speed up web panel ===> Kloxo-MR

- Print

Pages: [1] 2 Go Up
« previous next »

- MRatWork Forum by Mustafa Ramadhan »
- Language Specific Discussions »
- Indonesia Users »
- Internal Server Error setelah ganti ke PHP-FPM

Top 4 Global Search Engines: Google Bing Baidu Yahoo

- Design By SMFSimple.com
- SMF 2.0.14 | SMF © 2017, Simple Machines

Page created in 0.041 seconds with 18 queries.

Mirror created by MasterkinG32.CoM