Dalam artikel ini, kami akan memberi anda arahan langkah demi langkah tentang cara mengkonfigurasi persekitaran web pada pelayan yang menjalankan Linux. Perkara pertama dahulu, anda perlu memahami bahawa pelayan web biasa terdiri daripada beberapa komponen yang berinteraksi:
- pelayan HTTP
- penterjemah bahasa pengaturcaraan
- sistem pengurusan pangkalan data (DBMS)
Untuk mengurus tapak web anda, anda juga perlu menyediakan sistem pengurusan kandungan (CMS), antara muka web untuk pengurusan pangkalan data dan akses FTP.
Mari kita pertimbangkan untuk menyediakan konfigurasi Apache-PHP-MySQL(MariaDB) yang sangat popular di Linux. Kami juga akan memasang pelayan ftp vsftpd, phpMyAdmin - antara muka web untuk pengurusan pangkalan data, dan sistem pengurusan kandungan WordPress.
Sila mulakan memesan pelayan VPS or dedicated server. Sebagai contoh, kami menggunakan pelayan maya dengan alamat IP statik yang menjalankan Pelayan Ubuntu 18.04. Semua arahan dijalankan oleh pengguna root.
Konfigurasi Pelayan HTTP Apache
1. pemasangan
apt install apache2
Apabila pemasangan selesai, buka penyemak imbas dan semak “http://[server's_ip_address]”
Jika anda melihat halaman alu-aluan seperti ini pada tangkapan skrin di atas, itu bermakna pelayan HTTP anda berfungsi.
2. Buat halaman ujian
Direktori akar lalai untuk tapak web ialah “/var/www/html”. Di sinilah anda boleh mencari halaman alu-aluan yang baru anda lihat. Mari buat direktori yang berasingan “/var/www/sites” untuk hos maya dan subfolder “/var/www/sites/site1” dengan halaman indeks tapak web ujian anda.
cd /var/www/
mkdir -p sites/site1
echo "<H1>Welcome</H1>" > sites/site1/index.html
Dalam hasilnya fail “/var/www/sites/site1/index.html” harus mengandungi hanya satu baris kod html:
<H1>Welcome</H1>
3. Konfigurasi pelayan Apache
Fail konfigurasi tapak web berada dalam "/etc/apache2/sites-available/" katalog. Mari buat fail konfigurasi untuk hos maya baharu yang mengambil konfigurasi lalai daripada fail “000-default.conf” sebagai asas.
cd /etc/apache2/sites-available/
cp 000-default.conf site1.conf
Buka fail “site1.conf” dan ubah “DocumentRoot” atribut. Letakkan laluan tapak web anda sebagai nilai, jadi dalam kes kami, ia adalah “/var/www/sites/site1”
Pada peringkat ini, kami tidak perlu mengkonfigurasi operasi serentak berbilang tapak web, jadi kami boleh melumpuhkan tapak web lalai dan mendayakan tapak baharu. Muat semula konfigurasi pelayan untuk menggunakan perubahan.
a2dissite 000-default
a2ensite site1
systemctl reload apache2
Buka pautan “http://[alamat_ip_pelayan]” sekali lagi dan pastikan bahawa bukannya halaman alu-aluan lalai, kami mempunyai halaman baharu kami.
Kami telah menyelesaikan konfigurasi pelayan HTTP kami dan kami boleh meneruskan ke langkah seterusnya.
Konfigurasi pelayan FTP
1. pemasangan
Mari pasang pelayan ftp kami dan pakej tambahan "db-util", yang kami perlukan untuk mengkonfigurasi pengguna maya
apt install vsftpd db-util
2. Buat akaun tempatan
Pelayan vsftpd membolehkan kami mengkonfigurasi kebenaran akses dengan cara yang sangat fleksibel. Untuk tugasan kami, kami perlu menyediakan pengguna ftp dengan perkara berikut:
- akses penuh kepada kandungan “/var/www/sites/”;
- lumpuhkan semua yang di atas “/var/www/”;
- sambungan dengan akaun maya;
Buat akaun setempat “maya” tanpa kebenaran log masuk tetapi dengan akses ke folder rumah “/var/www/”. Akaun ini akan digunakan oleh pengguna ftp untuk menyambung ke pelayan
useradd -d /var/www virtual
“Akar” akan menjadi pemilik “/var/www” folder secara lalai. Untuk membolehkan pengguna ftp mengubah suai kandungan tapak web, mari tukar pemilik “/var/www/sites/” termasuk subfolder daripada “maya”.
chown -R virtual:root /var/www/sites
Akibatnya, pengguna “maya” akan dapat melihat kandungan “/var/www/” dan tulis ke dalam “/var/www/sites/” subfolder.
3. Konfigurasi
Konfigurasi utama adalah dalam fail “/etc/vsftpd.conf”, jadi mari kita buka dan editnya seperti berikut:
#enable virtual users
anonymous_enable=NO
local_enable=YES
guest_enable=YES
guest_username=virtual
#configure permission
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
anon_other_write_enable=YES
anon_world_readable_only=NO
anon_umask=0022
chroot_local_user=YES
#launch settings
listen=YES
pasv_min_port=30000
pasv_max_port=30999
4. Buat pangkalan data
Anda memerlukan pangkalan data untuk menyimpan data akaun maya.
Mula-mula, mari buat fail teks ringkas “users.txt” dalam folder rumah dan simpan butiran akses (log masuk dan kata laluan) pengguna maya ke dalam setiap baris lain. Sebagai contoh, kami memerlukan pengguna maya dengan log masuk “ftp” dan kata laluan “Qwe123”. Kemudian fail akan kelihatan seperti ini:
ftp
Qwe123
Mari buat pangkalan data
db_load -T -t hash -f ~/users.txt /etc/vsftpd_login.db
Mari ubah suai fail PAM lalai “/etc/pam.d/vsftp” seperti berikut:
auth required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
account required /lib/x86_64-linux-gnu/security/pam_userdb.so db=/etc/vsftpd_login
Sila ambil perhatian bahawa laluan itu “pam_userdb.so” perpustakaan mungkin berbeza tetapi anda boleh mengubahnya jika perlu.
Muat semula pelayan vsftpd untuk menggunakan perubahan.
systemctl restart vsftpd
Kami selesai mengkonfigurasi pelayan FTP.
Butiran sambungan:
- ftp://[server's_ip_address]
- log masuk: ftp
- kata laluan: Qwe123
Konfigurasi pelayan PHP
1. Pemasangan PHP
Hari ini versi stabil terkini PHP ialah php 7.4.5 yang tidak disertakan dalam repositori rasmi Ubuntu. Mari sambungkan repositori pihak ketiga dan pasang versi terkini PHP.
apt update
apt install software-properties-common
add-apt-repository ppa:ondrej/php
apt update
apt install php7.4
2. daftar
Dalam usaha untuk PHP dilaksanakan fail halaman web harus mempunyai “.php” sambungan. Mari namakan semula halaman ujian kami:
cd /var/www/sites/site1/
mv index.html index.php
Tambahkan baris php berikut pada fail “/var/www/sites/site1/index.php”, jadi fail sepatutnya kelihatan seperti ini:
<H1>Welcome</H1>
<?php
phpinfo();
?>
Simpan perubahan dan semak hasilnya dalam penyemak imbas.
Jika anda melihat hasil fungsi “phpinfo()”, penterjemah PHP berfungsi dengan betul. Sekarang mari kita teruskan ke langkah seterusnya.
Konfigurasi MySQL (MariaDB).
1. pemasangan
Mari pasang MariaDB dan modul PHP untuk MySQL dan kemudian muat semula Apache.
apt install mariadb-server php-mysql
systemctl restart apache2
Muat semula halaman ujian dan pergi ke bahagian PDO dalam jadual konfigurasi PHP. Jika anda boleh mencari bahagian itu “PDO_mysql”, maka ini bermakna pemacu untuk Mysql dipasang dengan betul.
Kemudian kita perlu melakukan konfigurasi keselamatan awal MariaDB dan menetapkan kata laluan untuk "Akar" pengguna, lumpuhkan akses jauh dan padam semua akaun tetamu.
mysql_secure_installation
Pada langkah pertama, kita perlu memasukkan "akar" kata laluan pengguna untuk mengakses DBMS atau tekan Enter jika tiada kata laluan. Memandangkan tiada kata laluan ditetapkan untuk "akar" pengguna selepas pemasangan, hanya tekan "Masuk".
Sila ambil perhatian bahawa dalam MariaDB sudah ada akaunnya sendiri yang tiada kaitan dengan akaun OS. Jadi satu-satunya pengguna yang kami berurusan dalam MariaDB ialah "akar".
Selepas itu, configurator akan meminta kami untuk menetapkan kata laluan untuk pengguna root. taip "Y" untuk mengesahkan dan memasukkan kata laluan baharu. Dalam kes kami, ia adalah “Qwe123”
Balas "Y" kepada semua soalan lain sehingga akhir.
Konfigurasi selesai!
Butiran akses MariaDB:
- Log masuk: root
- Kata laluan: Qwe123
konfigurasi phpMyAdmin
1. pemasangan
Mari pasang sambungan yang diperlukan untuk PHP - mbstring.
apt install php-mbstring
Dalam repositori rasmi hanya terdapat versi phpMyAdmin yang sudah lapuk, jadi mari kita pasang yang baharu secara manual.
Buka laman web rasmi projek "https://www.phpmyadmin.net/” dan muat turun arkib terkini.
Salin arkib ke pelayan dalam “/var/www/sites/” folder menggunakan mana-mana klien ftp.
Nyahrkibkan folder dan namakan semula kepada “phpMyAdmin”. Jangan lupa pasang “buka zip” utiliti. Anda boleh memadamkan arkib selepas anda menyahrkibkannya.
apt install unzip
cd /var/www/sites/
unzip phpMyAdmin-5.0.2-all-languages.zip
mv phpMyAdmin-5.0.2-all-languages phpMyAdmin
rm phpMyAdmin-5.0.2-all-languages.zip
Buat folder berikut “/var/www/sites/phpMyAdmin/tmp” untuk fail sementara dan membolehkan akses untuk semua orang. Jika anda tidak melakukan ini, phpMyAdmin akan melaporkan akses ditolak ke folder sementara.
cd /var/www/sites/phpMyAdmin/
mkdir tmp
chmod 777 tmp
2. Buat alias
Memandangkan phpMyAdmin bukan hos maya yang berasingan dan terletak di luar direktori akar, mari kita konfigurasikan alias.
Buka fail “/etc/apache2/mods-available/alias.conf” dan tambahkan baris ini:
Alias /pma “/var/www/sites/phpMyAdmin"
dalam bahagian ini:
<IfModule alias_module>
</IfModule>
Muat semula Apache untuk menggunakan perubahan.
systemctl reload apache2
Alias ditetapkan, jadi kita boleh mengakses phpMyAdmin di sini “http://[server's_ip_address]/pma”.
3. Sediakan pangkalan data
Memandangkan kami mengehadkan penggunaan pengguna root semasa konfigurasi awal MariaDB, kami perlu membuat akaun baharu dengan semua kebenaran yang akan digunakan untuk mengakses phpMyAdmin.
Selain itu, untuk mendayakan ciri tambahan phpMyAdmin, kami memerlukan pangkalan data perkhidmatan dan akaun untuk mengaksesnya.
Mari buat akaun
mariadb -u root -p
GRANT ALL PRIVILEGES ON *.* TO 'pma'@'localhost' IDENTIFIED BY 'Qwe123' WITH GRANT OPTION;
GRANT SELECT, INSERT, UPDATE, DELETE ON `phpmyadmin`.* TO 'pmaservice'@'localhost' IDENTIFIED BY 'Qwe123' WITH grant option;
quit
Sila ambil perhatian bahawa nama pangkalan data dalam permintaan kedua adalah di belakang percikan api “… HIDUP `phpmyadmin`.* KEPADA 'pma'@'localhost' DIKENAL PASTI OLEH …”,
Hasilnya, akan ada dua akaun yang dibuat dalam MariaDB:
- Log masuk: pma, Kata Laluan: Qwe123Akses penuh, akan digunakan untuk log masuk ke phpMyAdmin
- Log masuk: pmaservice, Kata laluan: Qwe123Akaun perkhidmatan diperlukan untuk ciri tambahan berfungsi
Pada langkah seterusnya, kami akan menetapkan butiran ini dalam fail konfigurasi “config.inc.php”.
Kemudian kita perlu mengimport pangkalan data daripada fail “phpMyAdmin/sql/create_tables.sql”.
Mari kita mengimportnya dengan bantuan phpMyAdmin.
Buka pautan “http://[server's_ip_address]/pma”
Masukkan log masuk “pma” dan kata laluan “Qwe123”
Pergi ke "Import", Klik “Pilih fail” dan pilih fail "sql/create_tables.sql" dalam direktori akar phpMyAdmin. Sepatutnya terdapat folder pada PC anda “phpMyAdmin” dengan fail. Nyahrkibkannya jika perlu.
Klik "Seterusnya" untuk mula mengimport.
4. Konfigurasi
Mari salin fail konfigurasi daripada templat
cd /var/www/sites/phpMyAdmin/
cp config.sample.inc.php config.inc.php
Mari buka fail konfigurasi “/var/www/sites/phpMyAdmin/config.inc.php” dan lakukan perubahan berikut:
Tetapkan nilai rawak 32 aksara untuk atribut “$cfg['blowfish_secret']”. Gunakan mana-mana penjana kata laluan untuknya..
Alih keluar ulasan daripada semua baris "Tetapan storan konfigurasi phpMyAdmin" bahagian dan tetapkan log masuk dan kata laluan akaun perkhidmatan MariaDB untuk “pengguna kawalan” and “pass kawalan” atribut dengan sewajarnya. Dalam kes kami, ia adalah pmaservice and Qwe123.
Simpan perubahan.
Akses butiran untuk phpMyadmin:
- http://[server’s_ip_address]/pma/
- Log masuk: pma
- Kata laluan: Qwe123
Bagaimana untuk memasang dan mengkonfigurasi WordPress pada pelayan Linux
1. Pakej WordPress dan penempatan fail
Pergi ke laman web rasmi WP “https://ru.wordpress.org/” dan muat turun arkib ke PC tempatan anda.
Muat naik arkib ke pelayan ke dalam “/var/www/sites/” folder dan nyahrkibkannya ke “wordpress"Folder.
Salin kandungan “/var/www/sites/wordpress/” folder akar “/var/www/sites/site1/” laman web.
Memandangkan kami menyalin fail melalui konsol dengan kebenaran root, mari tukar pemilik fail tersebut “/var/www/sites/” folder termasuk kandungan “maya”. Ini diperlukan untuk membolehkan akses penuh untuk sambungan ftp melalui klien.
cd /var/www/sites/
tar -xzvf wordpress-5.4-ru_RU.tar.gz
cp -R wordpress/* site1/
chown -R virtual:root /var/www/sites
2. Buat pangkalan data untuk WordPress
Log masuk ke phpMyAdmin dan klik "Buat pangkalan data". Tentukan nama pangkalan data sewenang-wenangnya, dalam kes kami "wordpress_db" dan klik butang "Buat".
Pilih pangkalan data baharu di bahagian kiri dan klik “Keistimewaan”
Kemudian klik “Tambah akaun pengguna”.
Masukkan log masuk dan kata laluan (wpservice / Qwe123) dalam tetingkap yang dibuka, semak “Berikan semua keistimewaan dalam wordpress_db” dan klik "Seterusnya"
Pada halaman seterusnya klik “Batalkan semua” untuk menetapkan semula semua keistimewaan pada peringkat pangkalan data dan klik "Seterusnya".
3. Konfigurasi WordPress pada pelayan Linux
Pergi ke direktori akar tapak web anda dan salin fail konfigurasi daripada templat
cd /var/www/sites/site1/
cp wp-config-sample.php wp-config.php
Buka “wp-config.php” fail dan masukkan parameter sambungan pangkalan data yang kami buat pada langkah sebelumnya dan simpan perubahan.
4. Pasang CMS WordPress
Buka pautan berikut dalam penyemak imbas “http://[server's_ip_address]/wp-admin/install.php”.
Isi semua medan dan klik “Pasang WordPress”. Tetapkan nama pengguna dan kata laluan rawak. Dalam kes kami, ia adalah wpadmin and Qwe123 sewajarnya.
Butiran ini akan digunakan untuk mengakses WordPress.
Selepas anda selesai memasang, buka pautan “http://[server's_ip_address]/wp-login.php”, masukkan butiran akses, dan log masuk ke WordPress.
Anda sepatutnya melihat salah satu templat WordPress pada halaman utama.
Konfigurasi telah selesai.
Butiran akses WordPress:
- http://[server’s_ip_address]/wp-login.php
- Log masuk: wpadmin
- Kata laluan: Qwe123