Ang WordPress kasama ang Nginx, i-install nang lokal ang CMS na ito sa Ubuntu 20.04

tungkol sa pag-install ng wordpress na may nginx

Sa susunod na artikulo ay titingnan natin kung paano natin magagawa i-install ang WordPress gamit ang Nginx sa Ubuntu 20.04. Ang isang ito CMS ay isa sa pinakalawakang ginagamit na open source system ng pamamahala ng nilalaman. Pinapagana nito ang halos 60 milyong mga website. Nakasulat ito sa PHP at gumagamit ng MariaDB / MySQL bilang isang database upang mag-imbak ng impormasyon.

Sa mga sumusunod na linya makikita namin kung paano i-install ang WordPress nang lokal sa Nginx sa Ubuntu 20.04. Para sa kadahilanang ito, bago magpatuloy ito ay kinakailangan mai-install ang stack ng LEMP software sa Ubuntu 20.04 upang makapagsimula.

I-install ang WordPress gamit ang Nginx sa Ubuntu 20.04

Mag-install ng mga extension sa PHP

Ang mga sumusunod na extension ay kinakailangan para tumakbo ang WordPress sa Ubuntu 20.04. Upang mai-install ang mga ito ay magbubukas lamang kami ng isang terminal (Ctrl + Alt + T) at magpatupad:

pag-install ng php packages

sudo apt update && sudo apt install php-dom php-simplexml php-ssh2 php-xml php-xmlreader php-curl php-exif php-ftp php-gd php-iconv php-imagick php-json php-mbstring php-posix php-sockets php-tokenizer

Lumikha Nginx Server Block para sa WordPress

Lilikha kami ng isang bloke ng Nginx server para sa pag-install ng WordPress. Ang block ng server na ito ay nangangailangan ng isang pangalan ng domain, numero ng port, ugat ng dokumento, lokasyon ng rehistro, atbp.. Para sa halimbawang ito, ang data na gagamitin ko ay ang sumusunod. Hayaan ang bawat gumagamit na iakma ang mga ito ayon sa kanilang mga pangangailangan:

  • Pangalan ng domain: www.wordpress.local
  • Direktoryo ng root ng dokumento: /site/www.wordpress.local/public_html/
  • Mga tala: /site/www.wordpress.local/logs/

Magsimula na tayo lumilikha ng isang file block ng pagsasaayos ng server sa direktoryo /etc/nginx/conf.d may utos:

sudo vim /etc/nginx/conf.d/www.wordpress.local.conf

Sa loob ng file ilalagay namin ang sumusunod na nilalaman:

nginx config file para sa lokal na WordPress

server {
        server_name www.wordpress.local;
        root /sites/www.wordpress.local/public_html/;

        index index.html index.php;

        access_log /sites/www.wordpress.local/logs/access.log;
        error_log /sites/www.wordpress.local/logs/error.log;

        # No permitir que las páginas se representen en un iframe en dominios externos
        add_header X-Frame-Options "SAMEORIGIN";

        # Prevención MIME
        add_header X-Content-Type-Options "nosniff";

        # Habilitar el filtro de secuencias de comandos entre sitios en los navegadores compatibles
        add_header X-Xss-Protection "1; mode=block";

        # Evitar el acceso a archivos ocultos
        location ~* /\.(?!well-known\/) {
                deny all;
        }

        # Evitar el acceso a ciertas extensiones de archivo
        location ~\.(ini|log|conf)$ {
                deny all;
        }

        # Habilitar enlaces permanentes de WordPress
        location / {
                try_files $uri $uri/ /index.php?$args;
        }

        location ~ \.php$ {
        include /etc/nginx/fastcgi_params;
        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        }

}

Nai-save namin ang file at lumabas. Ngayon ay pupunta na kami lumikha ng direktoryo ng ugat ng dokumento at direktoryo ng mga talaan gamit ang mga utos:

lumilikha ng direktoryo ng ugat ng dokumento

sudo mkdir -p /sites/www.wordpress.local/public_html/

sudo mkdir -p /sites/www.wordpress.local/logs/

Nagpatuloy kami pagsuri sa mga file ng pagsasaayos ng Nginx:

suriin ang mga file ng pagsasaayos nginx

sudo nginx -t

Ang isang mensahe tulad ng isa sa nakaraang screenshot ay makumpirma na ang pagsasaayos ng server nginx ay tama. Natapos namin ang pag-restart ng serbisyo:

sudo systemctl restart nginx.service

Lumikha ng database para sa WordPress

lumilikha ng database para sa WordPress na may nginx

Mag-log in sa MariaDB / MySQL:

sudo mysql -u root -p

Pagkatapos nilikha namin ang database para sa WordPress:

CREATE DATABASE wordpress;

Ang sumusunod ay magiging lumikha ng isang gumagamit:

CREATE USER 'wpusuario'@'localhost' IDENTIFIED BY '123password';

Nagpatuloy kami pagbibigay ng pahintulot sa nilikha na gumagamit upang ma-access ang database:

GRANT ALL PRIVILEGES ON wordpress.* TO 'wpusuario'@'localhost';

At kaya natin pahid:

quit

Pag-download ng WordPress

Ina-download namin ang pinakabagong bersyon ng WordPress de WordPress.org sa wget:

i-download ang pinakabagong bersyon ng WP

wget http://wordpress.org/latest.tar.gz

Ngayon tayo kunin ang WordPress package may utos alkitran:

tar -zxvf latest.tar.gz

Ang sumusunod ay magiging ilipat ang mga file ng WordPress sa pag-root ng dokumento:

sudo mv wordpress/* /sites/www.wordpress.local/public_html/

Patuloy kaming nagbabago ng pag-aari upang maisulat ni Nginx ang mga file sa root ng dokumento na iyon:

baguhin ang mga pahintulot sa direktoryo ng root

sudo chown -R www-data:www-data /sites/www.wordpress.local/public_html/

sudo chown -R www-data:www-data /sites/www.wordpress.local/logs/

Ngayon tayo lumikha ng isang host entry para sa domain (sa halimbawang ito www.wordpress.local) sa File / Etc / host, kung sakaling ang aming kapaligiran ay walang isang DNS server para sa paglutas ng pangalan:

sudo vim /etc/hosts

Sa loob ng file, magdaragdag kami ng isang entry tulad ng ipinakita sa ibaba. Ang ginamit na IP ay ang aking lokal na computer.

file ng mga host ng lokal na wordpress

I-install ang WordPress

Kasunod sa data sa halimbawang ito, pupunta kami buksan ang web browser at bisitahin ang url:

pagpili ng wika sa pag-install ng WP

http://www.wordpress.local

Dadalhin tayo nito sa Wizard sa pag-install ng WordPress.

simulan ang wp install wizard

Kailangan nating isulat ang mga detalye ng database upang payagan ang WordPress na kumonekta dito. Ito ang magiging data ng database na nilikha dati

pagsasaayos ng database sa pag-install ng Wp

Kung matagumpay ang koneksyon, makakakita kami ng isang mensahe ng tagumpay sa isang bagong screen. Upang magpatuloy kailangan mo lamang mag-click sa Patakbuhin ang pag-install.

lokal na impormasyon sa site WP

Sa susunod na screen kailangan naming isulat ang pamagat ng site, gumagamit ng WordPress admin, password at email address. Pupunta kami sa susunod na screen sa pamamagitan ng pag-click sa I-install ang WordPress.

lokal na pag-access sa Wp

Kung maayos ang lahat, kumpleto na ang pag-install ng WordPress. Maaari na kaming mag-click sa Pag-access upang pumunta sa Administrator ng WordPress (Backend).

Backend ng WordPress

At mula doon maaari naming simulan ang pagbuo ng aming site:

frontal wp

Itakda ang maximum na laki ng pag-upload ng file

Bilang default, hindi pinapayagan ng PHP ang mga pag-upload ng file na higit sa 2MB. Upang payagan ang mas malaking mga pag-upload ng file sa pamamagitan ng interface ng web sa WordPress, kakailanganin naming i-configure ang upload_max_filesize at post_max_size sa php.ini.

sudo vim /etc/php/7.4/fpm/php.ini

Dito tayo pupunta hanapin upload_max_filesize y baguhin ang laki ng pag-upload sa 256M, kung ito ang kailangan mo:

upload_max_files sa php.ini

upload_max_filesize = 256M

Gagawin din namin hanapin post_max_size at babaguhin namin ang laki ng pag-upload ayon sa aming mga pangangailangan:

post_max_size php.ini

post_max_size = 256M

Upang matapos idaragdag namin ang pangunahing module client_max_body_size sa file ng pagsasaayos ng server ng Ngxx.

sudo vim /etc/nginx/nginx.conf

Maaaring idagdag ang direktiba sa HTTP block (para sa lahat ng mga site), partikular na bloke ng server o konteksto ng lokasyon.

direktiba sa nginx.conf

client_max_body_size 256M;

Nai-save namin ang file at lumabas. Natapos namin ang pag-restart ng mga serbisyo:

sudo systemctl restart php7.4-fpm.service

sudo systemctl restart nginx.service

At sa ito magkakaroon tayo Lokal na naka-install ang WordPress sa Ubuntu 20.04.


Iwanan ang iyong puna

Ang iyong email address ay hindi nai-publish. Mga kinakailangang patlang ay minarkahan ng *

*

*

  1. Responsable para sa data: Miguel Ángel Gatón
  2. Layunin ng data: Kontrolin ang SPAM, pamamahala ng komento.
  3. Legitimation: Ang iyong pahintulot
  4. Komunikasyon ng data: Ang data ay hindi maiparating sa mga third party maliban sa ligal na obligasyon.
  5. Imbakan ng data: Ang database na naka-host ng Occentus Networks (EU)
  6. Mga Karapatan: Sa anumang oras maaari mong limitahan, mabawi at tanggalin ang iyong impormasyon.

  1.   Ann dijo

    Hindi ito gumagana 🙁

    1.    Damien A. dijo

      Kamusta. Sa anong oras nabigo ang pag-install?

  2.   Álvaro dijo

    Paano ko mai-configure ang Nginx upang ma-access mula sa isang panlabas na makina mula sa parehong lokal na network?
    Kapag inilalapat ang ipinahiwatig na pagsasaayos at sinusubukan na ipasok sa pamamagitan ng pag-access ng pangalan sa default ng Nginx.