Memasang Lemp (Nginx, PHP, MySQL dengan enjin MariaDB dan phpmyadmin) di Arch Linux
- 2831
- 349
- Chris Little I
Kerana model pelepasan rollingnya yang merangkumi perisian umur pemotongan Arch Linux tidak direka dan dibangunkan untuk dijalankan sebagai pelayan untuk menyediakan perkhidmatan rangkaian yang boleh dipercayai kerana ia memerlukan masa tambahan untuk penyelenggaraan, peningkatan pemalar dan konfigurasi fail yang masuk akal.
Pasang Lemp di Arch-LinuxTetapi, masih, kerana Arch Linux Dilengkapi dengan pemasangan teras CD dengan perisian minimum yang telah dipasang sebelum ini, ia boleh mewakili titik permulaan asas pepejal untuk memasang kebanyakan perkhidmatan rangkaian popular hari ini, termasuk ini termasuk Lemp atau Lampu, Pelayan web Apache, nginx, php, pangkalan data sql, samba, pelayan ftp, mengikat dan lain -lain, banyak yang disediakan dari Lengkungan Repositori rasmi Linux dan lain -lain dari Aur.
Tutorial ini akan membimbing melalui memasang dan mengkonfigurasi Lemp Stack (nginx, php, mysql dengan enjin MariaDB dan phpmyadmin) dari jauh menggunakan SSH, yang dapat memberikan asas yang kukuh untuk membina aplikasi pelayan web.
Keperluan
Panduan Pemasangan Arch Linux Sebelumnya, kecuali bahagian terakhir pada rangkaian dengan DHCP.
Langkah 1: Berikan IP statik pada antara muka rangkaian
1. Selepas minimum Arch Linux Pemasangan teras Reboot pelayan anda, log masuk dengan akaun root atau akaun sudo pentadbiran yang setara, dan kenal pasti nama peranti NIC anda menggunakan Pautan IP perintah.
# pautan ipPeriksa nama antara muka rangkaian
2. Untuk memberikan konfigurasi rangkaian statik yang akan kami gunakan Netctl pakej untuk menguruskan sambungan rangkaian. Setelah anda berjaya mengenal pasti anda Antara muka rangkaian Salinan nama Ethernet-Static templat fail ke netctl Laluan Sistem dan Tukar Namanya ke Skim Penamaan Deskriptif (Cuba Gunakan "statik"String digabungkan dengan nama Nic), dengan mengeluarkan arahan berikut.
# cp/etc/netctl/contoh/etenet-statik/etc/netctl/statik.ENS33
3. Langkah seterusnya adalah untuk mengedit fail templat baru ini dengan menukar arahan fail dan menyediakan tetapan rangkaian sebenarnya (antara muka, IP/netmask, gerbang, siaran, DNS) seperti di bawah petikan di bawah.
# nano/etc/netctl/statik.ENS33Tambah butiran rangkaian
Penerangan = 'Sambungan Ethernet Statik Asas untuk Interface Ens33' = ENS33 Sambungan = Ethernet IP = Alamat Statik = ('192.168.1.33/24 ') Gateway = "192.168.1.1 "Brodcast =" 192.168.1.255 "DNS = ('192.168.1.1 "8.8.8.8 ')
4. Langkah seterusnya ialah memulakan sambungan rangkaian anda melalui netctl alat sistem dan sahkan sambungan sistem anda dengan mengeluarkan arahan berikut.
# netctl statik statik.ENS33 # status status netctl.ENS33Memulakan perkhidmatan rangkaian
5. Sekiranya anda mendapat status keluar hijau aktif, anda telah berjaya mengkonfigurasi anda Antara muka rangkaian Dan sudah tiba masanya untuk membolehkannya secara automatik pada perkhidmatan sistem. Juga menguji rangkaian anda dengan menjalankan a ping perintah terhadap nama domain dan juga, pasang alat bersih Pakej (ciri yang paling terkenal dalam pakej ini adalah perintah ifconfig yang mana pemaju gerbang dianggap sebagai jenis yang ditutup dan menggantikannya dengan IPROUTE2).
Dayakan konfigurasi sistem NIC yang luas
# netctl membolehkan statik.ENS33
Pasang pakej alat bersih
# PACMAN -S -TOOLS
6. Sekarang anda boleh berlari ifconfig perintah untuk mengesahkan anda Antara muka rangkaian tetapan dan periksa sama ada semuanya dipaparkan dengan betul, maka Reboot sistem anda untuk memastikan semuanya ada dan dikonfigurasikan dengan betul.
# ping tecmint.comSahkan sambungan rangkaian
Langkah 2: Pasang perisian Lemp
Seperti yang ditunjukkan dalam pengenalan artikel ini Lemp bermaksud Linux+nginx+php/phpmyadmin+mysql/Mariadb yang merupakan salah satu platform aplikasi web yang paling meluas hari ini selepas Lampu (timbunan yang sama dengan Apache dalam persamaan).
7. Sebelum sebenarnya dipasang Lemp timbunan kita perlu mengemas kini sistem dan kemudian mendapatkan kawalan jauh ke Arch Linux pelayan. Seperti yang anda mungkin tahu OpenSSH adalah calon utama untuk pekerjaan ini jadi teruskan dan pasangkannya, mulakan SSH Daemon dan membolehkan sistem itu meluas.
$ sudo pacman -syu $ sudo pacman -s opensshPasang Perkhidmatan SSH Terbuka
$ sudo systemctl start sshd $ sudo systemctl status sshd $ sudo systemctl enable sshdMulakan Perkhidmatan SSH Buka
Sekarang adalah masa untuk meneruskan Lemp pemasangan. Kerana tutorial ini dimaksudkan sebagai panduan yang komprehensif, saya akan membahagikan Lemp pemasangan timbunan ke dalam kepingan kecil, langkah demi langkah.
8. Pasang pertama Pelayan web nginx, Kemudian mulakannya dan sahkan statusnya dengan mengeluarkan arahan berikut.
$ sudo pacman -s nginx $ sudo systemctl start nginx $ sudo systemctl status nginxPasang pelayan web nginx Mulakan pelayan web nginx
9. Perkhidmatan seterusnya yang akan dipasang adalah Mysql pangkalan data. Mengeluarkan arahan berikut untuk memasang pelayan pangkalan data MySQL dan pilih Mariadb enjin, kemudian mulakan dan sahkan status daemon.
$ sudo pacman -s mysql $ sudo systemctl start mysqld $ sudo systemctl status mysqldPasang pangkalan data MySQL Mulakan pangkalan data MySQL
10. Langkah seterusnya adalah untuk menyediakan persekitaran yang sangat selamat untuk pangkalan data MySQL dengan menyediakan kata laluan untuk akaun root mysql, keluarkan akaun pengguna tanpa nama, keluarkan pangkalan data ujian dan akaun root yang boleh diakses dari luar localhost. Jalankan arahan berikut untuk meningkatkan keselamatan MySQL, tekan [Masukkan] Untuk kata laluan akaun root semasa, kemudian jawab Ya kepada semua soalan (juga menyediakan kata laluan akaun root anda).
$ sudo mysql_secure_installationPemasangan MySQL selamat Konfigurasikan tetapan MySQL
Catatan: Dengan apa -apa cara jangan mengelirukan akaun root mysql dengan akaun akar sistem linux - mereka adalah dua perkara yang berbeza - tidak begitu berbeza tetapi mereka berjalan pada tahap yang berbeza.
Untuk mengesahkan log masuk keselamatan MySQL ke pangkalan data menggunakan mysql -u root -p sintaks perintah, berikan kata laluan root anda kemudian tinggalkan pangkalan data keluar; perintah.
# mysql -u root -pSambungkan ke pangkalan data MySQL
11. Sekarang sudah tiba masanya untuk dipasang Php bahasa skrip sisi pelayan untuk dapat membangun dan menjalankan aplikasi web dinamik yang kompleks, bukan hanya berkhidmat HTML/CSS kod.
Kerana kita menggunakan Nginx Sebagai pelayan web kita perlu memasang PHP-FPM modul yang disokong untuk berkomunikasi melalui Gateway biasa yang cepat dan tukar kandungan dinamik yang dihasilkan oleh skrip PHP.
Mengeluarkan baris arahan berikut untuk dipasang PHP-FPM perkhidmatan, kemudian mulakan daemon dan sahkan status.
$ sudo pacman -s php php-fpm $ sudo systemctl start php-fpm $ sudo systemctl status php-fpmPasang PHP dan PHP-FPM Mulakan perkhidmatan PHP-FPM
Untuk menyenaraikan semua ada Modul PHP Mengeluarkan arahan berikut.
$ sudo pacman -s php [tab] $ sudo pacman -ss | GREP PHPSenaraikan semua modul PHP Sahkan semua modul PHP
12. Salah satu langkah terakhir ialah memasang Antara muka web phpmyadmin Untuk pangkalan data MySQL. Keluarkan arahan berikut untuk memasang phpmyadmin bersama -sama dengan modul yang diperlukan PHP kemudian buat pautan simbolik untuk laluan sistem phpmyaadmin ke laluan akar lalai nginx.
$ pacman -s phpmyadmin php -mcrypt $ sudo ln -s/usr/share/webapps/phpmyadmin/usr/share/nginx/htmlPasang phpmyadmin
13. Kemudian konfigurasikan php.Ini fail untuk memasukkan sambungan yang diperlukan oleh aplikasi phpmyadmin.
$ sudo nano/etc/php/php.Ini
Cari dengan [Ctrl+w] Kekunci dan Uncomment (Keluarkan ; pada baris permulaan) baris berikut.
lanjutan = mysqli.jadi lanjutan = mysql.jadi lanjutan = mcrypt.Jadi mysqli.membenarkan_local_infile = on
Pada fail yang sama mencari dan Edit Open_Basedir Arahan untuk menyerupai dengan direktori termasuk berikut.
open_basedir =/srv/http/:/home/:/tmp/:/usr/share/pear/:/usr/share/webapps/:/etc/webapps/Konfigurasikan PHP.Sambungan ini Dayakan sambungan PHP MySQL
14. Langkah seterusnya adalah untuk membolehkan Php-fpm fastcgi pada arahan nginx localhost. Mengeluarkan arahan seterusnya untuk membuat sandaran nginx.Conf Konfigurasi Fail Pelayan Web kemudian ganti dengan kandungan berikut.
$ sudo mv/etc/nginx/nginx.conf/etc/nginx/nginx.Conf.Bak $ sudo nano/etc/nginx/nginx.Conf
Tambahkan keseluruhan kandungan berikut pada nginx.Conf.
#user html; worker_processes 2; #error_log log/ralat.log; #error_log log/ralat.notis log; #error_log log/ralat.maklumat log; #pid log/nginx.pid; peristiwa worker_connections 1024; http termasuk mime.jenis; default_type Application/Octet-stream; Sendfile pada; #TCP_NOPUSH ON; #keepalive_timeout 0; Keepalive_timeout 65; gzip pada; pelayan mendengar 80; server_name localhost; root/usr/share/nginx/html; Charset Koi8-R; lokasi / indeks indeks.Indeks PHP.Indeks HTML.htm; Autoindex ON; AUTOINDEX_EXACT_SIZE OFF; AUTOINDEX_LOCALTIME ON; lokasi /phpmyadmin menulis semula ^ /* /phpmyadmin terakhir; error_page 404 /404.html; # Redirect Halaman ralat pelayan ke halaman statik /50x.HTML ERROR_PAGE 500 502 503 504 /50X.html; Lokasi = /50x.html root/usr/share/nginx/html; lokasi ~ \.php $ #fastcgi_pass 127.0.0.1: 9000; (Bergantung pada konfigurasi soket php-fpm anda) Fastcgi_pass unix:/run/php-fpm/php-fpm.kaus kaki; indeks fastcgi_index.PHP; Termasuk fastcgi.Con; lokasi ~ /\.ht menafikan semua;Dayakan php-fpm fastcgi
15. Selepas semua konfigurasi fail telah dibuat, yang perlu anda lakukan adalah memulakan semula Nginx dan PHP-FPM perkhidmatan dan tunjuk penyemak imbas anda ke http: // localhost/phpmyadmin URL dari nod tempatan atau http: // arch_ip/phpmyadmin membentuk komputer lain.
$ sudo Systemctl Restart PHP-FPM $ SUDO Systemctl Restart NginxAkses pelayan web nginx Log masuk phpmyadmin Papan pemuka phpmyadmin
16. Sekiranya semuanya berjalan seperti yang dimaksudkan, langkah terakhir adalah untuk membolehkan Lemp sistem luas dengan arahan berikut.
$ sudo systemctl enable php-fpm $ sudo systemctl enable nginx $ sudo systemctl enable mysqldDayakan sistem Lemp lebar
Tahniah! Anda telah memasang dan mengkonfigurasi Lemp pada Arch Linux Dan, sekarang, anda mempunyai antara muka dinamik penuh untuk memulakan dan membangunkan aplikasi web.
Walaupun Arch Linux Bukankah sistem yang paling sesuai untuk dijalankan di pelayan pengeluaran kerana model pelepasan rolling berorientasikan komuniti ia boleh menjadi sumber yang sangat cepat dan boleh dipercayai untuk persekitaran pengeluaran yang tidak kritikal kecil.
- « Persediaan repositori tempatan dengan 'apt-mirror' di Ubuntu dan Debian Systems
- Buat laman web perkongsian video anda sendiri menggunakan 'CumulusClips Script' di Linux »