Konfigurasi dasar PHP 7 dan nginx di Ubuntu 16.04 Linux

Konfigurasi dasar PHP 7 dan nginx di Ubuntu 16.04 Linux

Nginx dengan cepat menyalip Apache sebagai server web favorit. Untuk aplikasi web built dalam bahasa seperti Rails dan Python itu hampir ada di mana -mana, tapi sedikit lebih lambat untuk diabaikan di dunia php. Bagian dari alasan untuk itu adalah seberapa mudah PHP dan Apache pergi bersama. Namun, PHP dan Nginx dapat bekerja sama dengan mudah, dan dengan pelepasan PHP 7, menggabungkan keduanya dapat menjadi pilihan yang cukup cepat.

Paket

Hal pertama yang pertama. Perbarui ubuntu dan dapatkan paket nginx dan php.

# sudo apt-get update && sudo apt-get -y upgrade # sudo apt-get -y install nginx php7.0 php7.0-fpm

Saat instalasi selesai, semua paket harus ada, dan benar -benar berjalan. Untuk memastikan bahwa ini adalah masalahnya, Anda dapat memeriksa apakah layanan Nginx dan PHP-FPM berjalan di SystemD.

# Sudo Systemctl Status Nginx # Sudo Systemctl Status Php7.0-fpm

Jika SystemD mengkonfirmasi bahwa kedua layanan berjalan, server harus benar -benar naik, dan Anda harus dapat melihat halaman selamat datang Nginx default dengan menavigasi ke localhost di browser.

Konfigurasi

Tentu saja, itu tidak siap untuk benar -benar menjadi tuan rumah apa pun. Ada beberapa konfigurasi yang diperlukan untuk menunjukkan Nginx pada beberapa konten aktual dan meningkatkan keamanan. Direktori root untuk file konfigurasi nginx terletak di /etc/nginx. Untungnya, sudah ada default di sana dari Ubuntu yang membuat proses konfigurasi lebih mudah.

Nginx.conf

File konfigurasi utama untuk nginx adalah Nginx.conf. Buka di editor teks pilihan Anda. Ini akan membutuhkan izin root, jadi editor berbasis teks seperti VIM mungkin akan menjadi yang terbaik. Konfigurasi default sebagian besar baik -baik saja. Jelas ada hal -hal yang dapat dilakukan untuk meningkatkan kecepatan dan keamanan sistem, tetapi sebagian besar berada di luar cakupan tutorial dasar ini. Jika Anda ingin meningkatkan kinerja, opsi GZIP yang dikomentari akan membantu dengan kompresi dan dapat mempercepat. Di sisi keamanan, menambahkan tiga baris berikut akan membantu mencegah aktivitas jahat.

Add_header X-Frame-Options SameRoRigin; Add_header X-Content-Type-Options Nosniff; add_header x-xss-proteksi "1; mode = blok";


Konfigurasi Situs

Setelah garis ditambahkan, simpan dan keluar. Ada dua folder di root nginx, situs-tersedia Dan Situs-Enabled. situs-tersedia Menyimpan Konfigurasi Situs. Situs-Enabled Berisi symlink ke file konfigurasi di situs-tersedia. Dengan cara ini, memungkinkan dan menonaktifkan situs adalah sesederhana membuat dan menghapus symlink.

Menggunakan editor teks Anda, buat file di /etc/nginx/situs-tersedia/milik Anda. File ini akan berisi konfigurasi khusus situs untuk situs web PHP 7 baru Anda. Contoh berikut berisi kerusakan pada komentar dari apa yang dilakukan masing -masing baris. Ini adalah konfigurasi yang cukup mendasar, tetapi akan menyelesaikan pekerjaan.

 Server #nginx harus mendengarkan di port 80 untuk permintaan ke milik Anda.com Dengarkan 80; server_name yourite.com; #Create Access and Error Log di/var/log/nginx access_log/var/log/nginx/yoursite.Access_log Main; ERROR_LOG/VAR/LOG/NGINX/Yoursite.Info aligasi_log; #Nginx harus melihat/var/www/milik Anda untuk root situs web Anda/var/www/yoursite/; #Beranda situs web Anda adalah file yang disebut indeks.Indeks indeks PHP.PHP; #Specified yang dicari Nginx .Lokasi File PHP ~ \.php $ #jika file tidak ditemukan, 404 try_files $ uri = 404; Konfigurasi fastcgi #include nginx termasuk/etc/nginx/fastcgi.conf; #Look for the fastcgi Process Manager di lokasi ini fastcgi_pass unix:/run/php/php7.0-fpm.kaus kaki;  

Saat Anda membuat file itu dibuat, simpan dan pindah ke Situs-Enabled direktori. Dari sana, buat symlink kembali ke file yang baru saja Anda buat.

# cd/etc/nginx/situs-diable # sudo ln -s/etc/nginx/situs-tersedia/milikmu

Php.Keamanan INI

Keamanan adalah target yang bergerak, dan tidak mungkin untuk tetap di depan setiap ancaman yang mungkin, tetapi selalu merupakan ide yang baik untuk mengunci instalasi server baru sebanyak mungkin. Ada beberapa penyesuaian sederhana yang dapat dibuat untuk php.ini file konfigurasi yang akan membantu mengamankan PHP. Dengan editor teks Anda, buka /etc/php/7.0/fpm/php.ini. Ini adalah file yang sangat besar. Sekali lagi, vim atau sesuatu dengan fungsi pencarian mungkin adalah yang terbaik.

Temukan pertama Disable_functions dan tambahkan phpinfo, sistem, surat, eksekutif sampai akhir rangkaian fungsi yang sudah ada. Lalu temukan file_uploads dan atur ke Mati. Selanjutnya, temukan SQL.mode aman dan beralihnya Pada. Terakhir, temukan allow_url_fopen dan atur ke Mati. Sebelum menutup file, tambahkan satu baris lagi ke ujung.

register_globals = off

Saat itu semua selesai, simpan dan tutup. Restart server dan harus siap untuk pergi.

# Sudo Systemctl restart php7.0-fpm # sudo systemctl restart nginx

Kemana harus pergi selanjutnya

Seperti duduk, server Ubuntu harus dapat menjalankan sebagian besar situs web PHP. File php apa pun yang ditempatkan di /var/www/milikmu akan dijalankan oleh server. Itu akan mencari indeks.php file pertama dan situs web dapat bercabang di sana. Tentu saja, ada banyak lagi yang dapat dilakukan untuk mengkonfigurasi PHP dan Nginx untuk kecepatan, keamanan, dan hampir semua situasi kasus khusus, tetapi sekarang Anda memiliki titik awal yang kuat.

Tutorial Linux Terkait:

  • Pengantar Otomatisasi Linux, Alat dan Teknik
  • Hal -hal yang harus diinstal pada ubuntu 20.04
  • Menguasai loop skrip bash
  • Cara meningkatkan ubuntu dari 22.04 hingga 22.10
  • Ubuntu 20.04 WordPress dengan Instalasi Apache
  • Ubuntu 20.04 Panduan
  • Hal -hal yang harus dilakukan setelah menginstal ubuntu 20.04 FOSSA FOSSA Linux
  • Mint 20: Lebih baik dari Ubuntu dan Microsoft Windows?
  • Seberapa sering Anda harus me -reboot server linux Anda?
  • Cara meningkatkan ubuntu ke 22.04 LTS Jammy Jellyfish