Bii o ṣe le Fi WordPress sori ẹrọ pẹlu Nginx lori Debian ati Ubuntu


NGINX (ti a pe ni engine-x ) jẹ orisun ṣiṣi ti o ni agbara, ina, ati olupin HTTP ti o rọ ti o ti pọ si gbaye-gbale ni awọn ọdun to kọja ati ni bayi ni wiwo olupin akọkọ ti agbara diẹ ninu awọn oju opo wẹẹbu-owo-ọja ti o tobi julọ ni awọn ọjọ wọnyi, bii Facebook , WordPress , Sourceforge tabi awọn omiiran.

Ohun ti o mu ki o yara ati igbẹkẹle ni otitọ pe o nlo apẹrẹ modular kanna bi Apache , ṣugbọn o ni ọna ti o yatọ si nipa awọn sobuiti wẹẹbu, ni lilo iwakọ iṣẹlẹ - faaji asynchronous ti ko ṣe awọn ilana bi yara bi o ṣe gba awọn ibeere ati tun lo awọn faili iṣeto ni rọrun.

Fun Ubuntu ati awọn ọna ipilẹ Debian , Nginx ti ṣajọ tẹlẹ bi package ninu awọn ibi ipamọ wọn ati pe o le fi sii nipasẹ iwulo ohun elo package.

O tun ṣe atilẹyin fun Awọn ọmọ ogun ti foju bii Apache ati lilo ikanni Fastcgi lati ṣe ibaraẹnisọrọ pẹlu awọn faili PHP lori olupin nipasẹ PHP-FPM.

Ikẹkọ yii ni wiwa fifi sori ẹrọ ati awọn atunto faili ipilẹ fun Nginx lati gbalejo Wodupiresi CMS oju opo wẹẹbu lori Alejo Gbigba ati eto kan si Ubuntu 18.04/20.04 , Debian 10/9 ati Linux Mint 20/19/18 .

Fifi sori ẹrọ ti Nginx Web Server

1. Fifi sori ẹrọ Nginx fun Ubuntu , Debian tabi Linux Mint jẹ titọ bi eyikeyi awọn idii miiran ati pe o le fi sii pẹlu aṣẹ kan ti o rọrun.

$ sudo apt-get install nginx

2. Itele, bẹrẹ, muu ṣiṣẹ, ati ṣayẹwo ipo Nginx lo awọn ofin systemctl atẹle.

$ sudo systemctl start nginx
$ sudo systemctl enable nginx
$ sudo systemctl status nginx

Fifi sori ẹrọ ti PHP ati MariaDB Server

3. Fun Nginx lati ni anfani lati ṣiṣe Wodupiresi , o nilo lati fi PHP sii, PHP-FPM, ati awọn idii MariaDB.

$ sudo apt-get install php php-mysql php-fpm php-curl php-gd php-intl php-mbstring php-soap php-xml php-xmlrpc php-zip mariadb-server mariadb-client

4. Nigbamii, rii daju pe iṣẹ ibi ipamọ data MariaDB n ṣiṣẹ ati muu ṣiṣẹ lati bẹrẹ laifọwọyi nigbati eto rẹ ba ti gbe.

$ sudo systemctl status mariadb
$ sudo systemctl is-enabled mariadb

5. Lati le ṣe ibaraẹnisọrọ pẹlu FastCGI ẹhin, iṣẹ PHP-FPM gbọdọ wa lọwọ lori olupin naa.

$ sudo systemctl start php7.4-fpm
$ sudo systemctl enable php7.4-fpm
$ sudo systemctl status php7.4-fpm

6. Bayi o nilo lati ṣe fifi sori ẹrọ MariaDB rẹ ni aabo nipasẹ ṣiṣiṣẹ mysql_secure_installation iwe afọwọkọ eyiti o gbe pẹlu package MariaDB.

$ sudo mysql_secure_installation

Lẹhin ṣiṣe akosile naa, yoo mu ọ nipasẹ ọpọlọpọ awọn ibeere nibi ti o ti le dahun bẹẹni (y) lati mu ilọsiwaju aabo ti fifi sori ẹrọ MariaDB rẹ pọ si ni awọn ọna wọnyi:

  • Tẹ ọrọ igbaniwọle lọwọlọwọ fun gbongbo (tẹ fun ko si): Tẹ Tẹ
  • Ṣeto ọrọ igbaniwọle root? [Y/n] y
  • Mu awọn olumulo alailorukọ kuro? [Y/n] y
  • Ṣe iwọle wiwọle lati gbongbo latọna jijin? [Y/n] y
  • Mu ibi ipamọ data idanwo kuro ki o wọle si rẹ? [Y/n] y
  • Tun gbee awọn tabili anfaani bayi? [Y/n] y

Fifi sori ẹrọ ti Wodupiresi

7. Wodupiresi nilo ibi ipamọ data lati tọju data lori olupin naa, nitorinaa ṣẹda ibi ipamọ data Wodupiresi tuntun fun oju opo wẹẹbu rẹ nipa lilo pipaṣẹ mysql bi a ti han.

# mysql -u root -p
MariaDB [(none)]> CREATE DATABASE mysite;
MariaDB [(none)]> GRANT ALL PRIVILEGES ON mysite.* TO 'mysiteadmin'@'localhost' IDENTIFIED BY  '[email !';
MariaDB [(none)]> FLUSH PRIVILEGES;
MariaDB [(none)]> EXIT;

8. Bayi ni akoko lati ṣẹda Wodupiresi Virtual Host ọna ti o gbongbo, ṣe igbasilẹ iwe-akọọlẹ Wodupiresi, yọ jade lẹhinna gbejade ẹda atunkọ si /var/www/html/wordpress .

$ sudo mkdir -p /var/www/html/mysite.com
$ wget http://wordpress.org/latest.tar.gz
$ tar xfvz latest.tar.gz
$ sudo cp -r wordpress/* /var/www/html/mysite.com

9. Fun dan Wodupiresi fifi sori laisi eyikeyi awọn aṣiṣe wp-config.php awọn ẹda faili ẹda, fifun Nginx www-data awọn olumulo eto pẹlu igbanilaaye kikọ lori /var/www/html/mysite.com ipa ọna ati yiyipada awọn ayipada lẹhin fifi Wodupiresi sii.

$ sudo chown -R www-data /var/www/html/mysite.com
$ sudo chmod -R 755 /var/www/html/mysite.com

Ṣiṣẹda NGINX Virtual Host fun Wẹẹbu Wodupiresi

10. Bayi ni akoko lati ṣẹda ipilẹṣẹ Oluṣakoso ti foju fun oju opo wẹẹbu Wodupiresi lori olupin Nginx . Ṣiṣe aṣẹ atẹle lati ṣẹda faili iṣeto ni olupin Wodupiresi kan.

$ sudo vim /etc/nginx/conf.d/mysite.com.conf

Lẹhinna ṣafikun akoonu atẹle.

server {
        listen 80;
        listen [::]:80;
        root /var/www/html/mysite.com; index index.php index.html index.htm; server_name mysite.com www.mysite.com; error_log /var/log/nginx/mysite.com_error.log; access_log /var/log/nginx/mysite.com_access.log; client_max_body_size 100M; location / { try_files $uri $uri/ /index.php?$args; } location ~ \.php$ { include snippets/fastcgi-php.conf; fastcgi_pass unix:/run/php/php7.4-fpm.sock; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; } }

11. Nipa aiyipada, awọn ọna Nginx gbogbo awọn ibeere si olupin aiyipada . Nitorinaa, yọ aiyipada bulọọki olupin lati jẹ ki oju opo wẹẹbu WordPress rẹ tabi awọn oju opo wẹẹbu miiran ti o fẹ gbalejo lori olupin kanna nigbamii.

$ sudo rm /etc/nginx/sites-enabled/default
$ sudo rm /etc/nginx/sites-available/default

12. Nigbamii, ṣayẹwo sintasi iṣeto NGINX fun awọn aṣiṣe eyikeyi ṣaaju ki o to tun bẹrẹ iṣẹ Nginx lati lo awọn ayipada tuntun.

$ sudo nginx -t
$ sudo systemctl restart nginx

Ipari fifi sori ẹrọ Wodupiresi nipasẹ Oluṣakoso Wẹẹbu

13. Bayi ṣii ẹrọ aṣawakiri wẹẹbu rẹ ki o pari fifi sori ẹrọ ni wodupiresi nipa lilo olupilẹṣẹ wẹẹbu.

http://mysite.com/
OR
http://SERVER_IP/

14. Lẹhinna ṣafikun alaye oju opo wẹẹbu gẹgẹbi akọle, orukọ olumulo abojuto, ọrọ igbaniwọle, ati adirẹsi imeeli. Lẹhinna tẹ Fi sii Wodupiresi lati tẹsiwaju fifi sori ẹrọ.

15. Lọgan ti fifi sori ẹrọ Wodupiresi pari, tẹsiwaju lati wọle si dasibodu ti olutọju oju opo wẹẹbu nipa tite lori bọtini iwọle bi o ṣe afihan ni iboju atẹle.

16. Ni oju-iwe iwọle iwọle ti oju opo wẹẹbu, pese orukọ olumulo ati ọrọ igbaniwọle rẹ ti o ṣẹda loke ki o tẹ buwolu wọle, lati wọle si dasibodu abojuto ti aaye rẹ.

17. Lẹhin fifi sori ẹrọ pari awọn igbanilaaye kaa nipasẹ ipinfunni aṣẹ atẹle.

$ sudo chown -R root /var/www/html/mysite.com

Jeki HTTPS lori Wodupiresi

18. Ti o ba fẹ mu HTTPS ṣiṣẹ lori oju opo wẹẹbu Wodupiresi rẹ, o nilo lati fi ijẹrisi SSL ọfẹ kan lati Jẹ ki Encrypt bi o ti han.

$ sudo apt-get update
$ sudo apt-get install software-properties-common
$ sudo add-apt-repository universe
$ sudo apt-get update
$ sudo apt-get install certbot python3-certbot-nginx
$ sudo certbot --nginx

Lati jẹrisi pe aaye WordPress rẹ ti ṣeto ni deede nipa lilo ijẹrisi SSL ọfẹ, ṣabẹwo si oju opo wẹẹbu rẹ ni https://yourwebsite.com/ ki o wa fun aami titiipa ninu ọpa URL. Ni omiiran, o le ṣayẹwo HTTPS aaye rẹ ni https://www.ssllabs.com/ssltest/.

Oriire! O ti fi sori ẹrọ ni ẹya tuntun ti Wodupiresi pẹlu NGINX lori olupin rẹ, ni bayi bẹrẹ kọ oju opo wẹẹbu tuntun tabi bulọọgi rẹ.