Rumah > pembangunan bahagian belakang > tutorial php > Menyediakan php di belakang nginx dengan fastcgi

Menyediakan php di belakang nginx dengan fastcgi

Lisa Kudrow
Lepaskan: 2025-02-23 08:34:12
asal
362 orang telah melayarinya

nginx dan fastcgi: persediaan php berprestasi tinggi

menjalankan aplikasi PHP dengan NGINX dan FastCGI menawarkan kelebihan prestasi dan skalabilitas yang signifikan ke atas pendekatan Apache/Mod_PHP tradisional. Butiran panduan ini menyediakan seni bina berprestasi tinggi ini di pelayan Ubuntu, memanfaatkan kecekapan FastCGI dan kuasa nginx.

fastcgi: rangsangan prestasi

overhead CGI yang wujud untuk membuat proses baru untuk setiap permintaan dikurangkan oleh FastCGI. FastCGI mengekalkan proses yang berterusan, dengan ketara mengurangkan CPU dan penggunaan masa. Ini membawa kepada peningkatan skalabiliti dan kecekapan pelayan keseluruhan. Imej di bawah menggambarkan proses CGI yang tipikal.

Setting Up PHP behind Nginx with FastCGI

pemasangan dan konfigurasi asas

  1. Pasang php dan nginx: Gunakan apt untuk memasang pakej yang diperlukan:

    sudo apt-get install php5-cli php5-fpm nginx
    Salin selepas log masuk
  2. Konfigurasi nginx: Elakkan secara langsung mengedit konfigurasi nginx lalai. Sebaliknya, buat salinan:

    cd /etc/nginx
    sudo rm sites-enabled/default
    sudo cp sites-available/default sites-available/my-default
    sudo ln -s /etc/nginx/sites-available/my-default sites-enabled/default
    Salin selepas log masuk
  3. Dayakan FastCGI: Uncomment garis yang relevan dalam untuk mengarahkan permintaan PHP ke perkhidmatan FastCGI (Php5-FPM). Bahagian penting harus menyerupai ini: /etc/nginx/sites-available/my-default

    location ~ \.php$ {
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        fastcgi_index index.php;
        include fastcgi_params;
    }
    Salin selepas log masuk
  4. Mula nginx:

    sudo service nginx start
    Salin selepas log masuk
  5. Sahkan pemasangan: create (mengandungi info.php) dalam akar web (<?php phpinfo(); ?>). Mengakses /usr/share/nginx/html dalam penyemak imbas anda harus memaparkan maklumat PHP, mengesahkan integrasi NGINX dan PHP melalui FastCGI. API pelayan harus menunjukkan "fpm/fastcgi". info.php

Setting Up PHP behind Nginx with FastCGI

Peningkatan konfigurasi penting

  • Kebenaran Root Web:

    Laraskan keizinan untuk mengelakkan penggunaan berterusan : sudo

     sudo adduser <username> www-data
     sudo chgrp -R www-data /usr/share/nginx/html
     sudo chmod -R g+rw /usr/share/nginx/html
     sudo chmod g+s /usr/share/nginx/html
    Salin selepas log masuk
  • Mengendalikan skrip tidak wujud:

    Tambah arahan kepada konfigurasi Nginx untuk meningkatkan keselamatan: try_files

     location ~ \.php$ {
         try_files $uri $uri/ =404;
         # ... other FastCGI directives ...
     }
    Salin selepas log masuk
  • berhijrah dari Apache:

    Gunakan penukar dalam talian untuk menterjemahkan arahan Apache (mis., Peraturan) ke setara nginx. Semak semak konfigurasi yang ditukar sebelum melaksanakannya. .htaccess

  • Kesimpulan

    Panduan ini menyediakan asas yang mantap untuk menubuhkan persekitaran PHP berprestasi tinggi menggunakan NGINX dan FASTCGI. Dengan mengikuti langkah -langkah ini dan menggabungkan peningkatan keselamatan dan prestasi yang disyorkan, anda boleh membuat pelayan web berskala dan cekap untuk aplikasi PHP anda. Ingatlah untuk sentiasa berunding dengan dokumentasi rasmi untuk NGINX dan PHP untuk maklumat terkini dan amalan terbaik.

    Atas ialah kandungan terperinci Menyediakan php di belakang nginx dengan fastcgi. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan