
Noah Scott
0
2373
733
Czasami uruchomienie jednej witryny na jednym serwerze może nie być świetnym sposobem na wykorzystanie zasobów systemowych… W dzisiejszych czasach host Linux z 1 procesorem i 4 GB pamięci RAM może obsługiwać wiele witryn WordPress i robić to wydajnie za pomocą Nginx…
Decydując się na uruchomienie wielu witryn WordPress na serwerze Ubuntu 16.04 LTS, wykonaj poniższe czynności… Dzięki serwerowi HTTP Nginx możesz uruchomić jak najwięcej witryn WordPress, o ile system hosta ma wystarczające zasoby z funkcją o nazwie Blok serwera…
Blok serwera Nginx to funkcja podobna do wirtualnego hosta Apache2. Te funkcje umożliwiają użytkownikom i webmasterom hostowanie wielu niezależnych witryn lub blogów na jednym komputerze hosta z jednym adresem IP i oddzielnymi nazwami domen.
Zamiast uruchamiać pojedynczą witrynę na osobnym serwerze z indywidualnymi adresami IP, blok serwera Nginx można skonfigurować tak, aby uruchamiał wszystkie różne witryny internetowe z jednego komputera hosta i jednego adresu IP…
Kiedy będziesz gotowy, wykonaj poniższe czynności, aby to zadziałało.
Krok 1: Przygotuj serwer Ubuntu 16.04 LTS
Serwery Ubuntu są łatwiejsze w użyciu i zarządzaniu, szczególnie dla nowych użytkowników i studentów. Inny serwer Linux pozwoli ci zrobić to samo, ale uważam, że Ubuntu jest znacznie bardziej przyjazny dla użytkownika niż inne dystrybucje Linuksa.
Przygotuj więc serwer Ubuntu i uruchom poniższe polecenia, aby go zaktualizować.
sudo apt-get update && sudo apt-get dist-upgrade && sudo apt-get autorove
Krok 2: Zainstaluj serwer WWW Nginx HTTP
Następnie uruchom poniższe polecenia, aby zainstalować serwer HTTP Nginx…
sudo apt-get install nginx
Po zainstalowaniu Nginx poniższe polecenia mogą służyć do zatrzymywania, uruchamiania i włączania usługi Nginx, aby zawsze uruchamiała się po uruchomieniu serwera…
sudo systemctl stop nginx.service sudo systemctl start nginx.service sudo systemctl włącz nginx.service
Krok 3: Zainstaluj serwer bazy danych MariaDB
Będziesz potrzebował serwera bazy danych dla WordPress… a serwer bazy danych MariaDB to świetne miejsce na rozpoczęcie. Aby go zainstalować, uruchom poniższe polecenia.
sudo apt-get install mariadb-server mariadb-client
Po zainstalowaniu poniższych poleceń można używać do zatrzymywania, uruchamiania i włączania usługi MariaDB, aby zawsze uruchamiała się po uruchomieniu serwera.
sudo systemctl stop mysql.service sudo systemctl start mysql.service sudo systemctl włącz mysql.service
Następnie uruchom poniższe polecenia, aby zabezpieczyć serwer MariaDB.
sudo mysql_secure_installation
Po wyświetleniu monitu odpowiedz na poniższe pytania, postępując zgodnie z instrukcjami.
- Wprowadź aktualne hasło roota (wpisz żadnego): Po prostu naciśnij Enter
- Ustawić hasło roota? [T / n]: Y
- Nowe hasło: wprowadź hasło
- Ponownie wprowadź nowe hasło: powtórz hasło
- Usunąć anonimowych użytkowników? [T / n]: Y
- Nie zezwalać na zdalne logowanie przez roota? [T / n]: Y
- Usunąć testową bazę danych i uzyskać do niej dostęp? [T / n]: Y
- Załadować teraz ponownie tabele uprawnień? [T / n]: Y
Zrestartuj serwer MariaDB
sudo systemctl zrestartuj mysql.service
Krok 4: Zainstaluj PHP 7.1-FPM i inne moduły PHP
PHP 7.1 nie jest dostępne w domyślnych repozytoriach Ubuntu… aby go zainstalować, musisz go pobrać z repozytoriów innych firm.
Uruchom poniższe polecenia, aby dodać poniższe repozytorium stron trzecich w celu aktualizacji do PHP 7.1
sudo apt-get install właściwości-oprogramowania-common sudo add-apt-repository ppa: ondrej / php
Następnie zaktualizuj i zaktualizuj do PHP 7.1
sudo apt update
Uruchom poniższe polecenia, aby zainstalować PHP 7.1 i powiązane moduły.
sudo apt install php7.1-fpm php7.1-common php7.1-mbstring php7.1-xmlrpc php7.1-mydło php7.1-gd php7.1-xml php7.1-intl php7.1-mysql php7. 1-cli php7.1-mcrypt php7.1-ldap php7.1-zip php7.1-curl
Po zainstalowaniu PHP uruchom poniższe polecenia, aby otworzyć domyślny plik PHP Apache2.
sudo nano /etc/php/7.1/fpm/php.ini
Następnie edytuj poniższe wiersze, aby wyglądały tak i zapisz plik.
file_uploads = On allow_url_fopen = On memory_limit = 256 mln upload_max_filesize = 100 max_execution_time = 360 cgi.fix_pathinfo = 0 date.timezone = America / Chicago
Krok 5: Utwórz bazy danych i Dsery WordPress
Na tym etapie naszej konfiguracji wszystkie wymagane serwery i pakiety zostały zainstalowane… nadszedł czas, aby utworzyć naszą indywidualną bazę danych witryny i pliki konfiguracyjne…
Będziemy tworzyć konfiguracje dla trzech witryn WordPress… Są to:
http://example.com http://example.net http://example.org
Utworzymy trzy bazy danych dla tych trzech witryn… Te bazy danych będą nazywane:
examplecomdb examplenetdb exampleorgdb
Aby utworzyć bazy danych, uruchom poniższe polecenia, aby zalogować się do serwera.
sudo mysql -u root -p
Następnie uruchom poniższe polecenia, aby utworzyć wszystkie trzy bazy danych… po jednym wierszu na raz…
CREATE DATABASE examplecomdb; UTWÓRZ BAZĘ DANYCH examplenetdb; CREATE DATABASE exampleorgdb;
W kolejnym zadaniu utworzymy trzech użytkowników bazy danych, po jednym dla każdej witryny… będą się nazywać:
examplecomuser examplenetuser exampleorguser
Uruchom poniższe polecenia, aby utworzyć trzech użytkowników i ustawić ich hasła
PRZYZNAJ WSZYSTKIE NA examplecomdb. * TO 'examplecomuser' @ 'localhost' IDENTIFIED BY 'type_new_password_here'; PRZYZNAJ WSZYSTKIE NA examplenetdb. * TO 'examplenetuser' @ 'localhost' IDENTIFIED BY 'typw_new_passwored_here'; GRANT ALL ON exampleorgdb. * TO 'exampleorguser' @ 'localhost' IDENTIFIED BY 'type_new_password_here';
Kiedy skończysz, uruchom poniższe polecenia, aby zapisać zmiany i wyjść.
PRZYWILEJE SPŁUKIWANIA; wyjście;
Krok 6: Utwórz bloki serwera Nginx
Teraz utworzymy trzy bloki serwerów dla naszych trzech witryn internetowych… uruchom poniższe polecenia, aby utworzyć każdy… dla każdego dodaj poniższy kod konfiguracyjny, zamień nazwę domeny i katalog główny na odpowiednie foldery.
sudo nano /etc/nginx/sites-available/example.com sudo nano /etc/nginx/sites-available/example.net sudo nano /etc/nginx/sites-available/example.org
Dla każdego pliku skopiuj i wklej poniższy kod… zastępując odniesienie do nazwy domeny i podświetlony folder główny.
serwer nasłuchuj 80; słuchaj [::]: 80; root /var/www/html/example.com; index index.php index.html index.htm; nazwa_serwera example.com www.example.com; client_max_body_size 100M; lokalizacja / try_files $ uri $ uri / /index.php?$args; lokalizacja ~ \ .php $ include snippets / fastcgi-php.conf; fastcgi_pass unix: /var/run/php/php7.1-fpm.sock; fastcgi_param SCRIPT_FILENAME $ document_root $ fastcgi_script_name;
Blok serwera Example.net wygląda następująco:
serwer nasłuchuj 80; słuchaj [::]: 80; root /var/www/html/example.net; index index.php index.html index.htm; nazwa_serwera example.net www.example.net; client_max_body_size 100M; lokalizacja / try_files $ uri $ uri / /index.php?$args; lokalizacja ~ \ .php $ include snippets / fastcgi-php.conf; fastcgi_pass unix: /var/run/php/php7.1-fpm.sock; fastcgi_param SCRIPT_FILENAME $ document_root $ fastcgi_script_name;
Zrób to tyle razy dla każdej witryny…
Kiedy skończysz, uruchom poniższe polecenia, aby włączyć bloki serwera…
sudo ln -s /etc/nginx/sites-available/example.com / etc / nginx / sites-enabled / sudo ln -s /etc/nginx/sites-available/example.net / etc / nginx / sites-enabled / sudo ln -s /etc/nginx/sites-available/example.org / etc / nginx / sites-enabled /
Krok 7: Utwórz główny folder dokumentów dla każdej witryny
W każdym bloku serwera lub pliku konfiguracyjnym witryny znajduje się lokalizacja główna. Tutaj powinna być przechowywana zawartość każdej witryny… i powinna być inna dla wszystkich witryn. Teraz, gdy zdefiniowaliśmy lokalizacje główne dla całej naszej witryny, przejdź i utwórz je poniżej.
sudo mkdir -p /var/www/html/example.com sudo mkdir -p /var/www/html/example.net sudo mkdir -p /var/www/html/example.org
Krok 8: Pobierz zawartość WordPress i skopiuj ją do każdej lokalizacji głównej
Teraz pobierz zawartość WordPress i wypakuj do katalogu głównego każdej witryny. Aby to zrobić, uruchom poniższe polecenia
cd / tmp / && wget http://wordpress.org/latest.tar.gz
Następnie rozpakuj pobrany plik.
tar -xzvf latest.tar.gz
I skopiuj do każdego folderu głównego każdej witryny.
sudo cp -R wordpress / * /var/www/html/example.com sudo cp -R wordpress / * /var/www/html/example.net sudo cp -R wordpress / * / var / www / html / example. org
Krok 9: Skonfiguruj ustawienia bazy danych WordPress
Następnie uruchom poniższe polecenia, aby utworzyć WordPress wp-config.php ustawienia dla każdej domeny…
sudo cp /var/www/html/example.com/wp-config-sample.php /var/www/html/example.com/wp-config.php sudo cp /var/www/html/example.net/wp -config-sample.php /var/www/html/example.net/wp-config.php sudo cp /var/www/html/example.org/wp-config-sample.php / var / www / html / example .org / wp-config.php
Następnie uruchom poniższe polecenia, aby otworzyć każdy plik konfiguracyjny i wprowadź informacje o połączeniu z bazą danych… a następnie zapisz plik.
sudo nano /var/www/html/example.com/wp-config.php sudo nano /var/www/html/example.net/wp-config.php sudo nano /var/www/html/example.org/wp -config.php
Po otwarciu każdego pliku wpisz nazwę bazy danych i hasło dla każdej utworzonej powyżej witryny… i zapisz plik.
// ** Ustawienia MySQL - możesz uzyskać te informacje od swojego hosta internetowego ** // / ** Nazwa bazy danych dla WordPress * / define ('DB_NAME', 'examplecomdb'); / ** Nazwa użytkownika bazy danych MySQL * / define ('DB_USER', 'examplecomuser'); / ** Hasło do bazy danych MySQL * / define ('DB_PASSWORD', 'type_password_here'); / ** Nazwa hosta MySQL * / define ('DB_HOST', 'localhost');
Wykonaj powyższe czynności dla każdej utworzonej witryny, upewniając się, że informacje o połączeniu z bazą danych są poprawne dla każdej witryny.
Gdy skończysz, uruchom poniższe polecenia, aby skonfigurować uprawnienia katalogów dla wszystkich witryn…
sudo chown -R www-data: www-data / var / www / html sudo chmod -R 755 / var / www / html
Następnie uruchom ponownie serwer WWW Nginx
sudo nginx -t sudo systemctl zrestartuj nginx
Po ponownym uruchomieniu Nginx bez błędów powinieneś mieć dostęp do nazw domen w swoich witrynach… i zobacz domyślną stronę konfiguracji WordPress.
dawny… http://example.com

Postępuj zgodnie z kreatorem WordPress, aż konfiguracja zostanie zakończona dla każdej witryny… To wszystko!
Oto jak skonfigurować wiele witryn WordPress w systemie Ubuntu 16.04 LTS
Cieszyć się!
Skonfiguruj uwierzytelnianie klucza OpenSSH (bez hasła) na serwerze Ubuntu 16.04 LTS