Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- Serwer WWW
- -------------
- ### Instalacja LAMP
- #https://www.howtoforge.com/tutorial/install-apache-with-php-and-mysql-lamp-on-debian-jessie/ &
- https://www.howtoforge.com/tutorial/install-wordpress-on-lamp-in-debian-9/
- # Aktualizacja systemu.
- apt-get update
- apt-get upgrade
- apt-get dist-upgrade
- Różne przydatne narzędzia:
- apt install net-tools sudo wget curl bash-completion
- Procedura A:
- =============
- # Apache
- apt-get -y install apache2
- #PHP
- apt-get -y install libapache2-mod-php7.0 php7.0 php7.0-gd php7.0-xml php7.0-curl php7.0-mbstring php7.0-mcrypt php7.0-xmlrpc
- #MariaDB
- apt-get -y install php7.0-mysql mariadb-server mariadb-client
- Konfiguracja i weryfikacja:
- ----------------------------
- systemctl start mariadb
- mysql_secure_installation
- #Na wszystkie pytania odpowiedzieć twierdząco (Y).
- #Zabezpieczenie dostepu:
- mysql -u root
- # środowisku sql
- use mysql;
- update user set plugin='' where User='root';
- flush privileges;
- quit
- #teraz powinien być błąd
- #ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
- #przy próbe dostępu komendą
- mysql -u root
- #Weryfikacja funcjonowania Apache i MariaDB
- netstat -tlp| egrep 'http|mysql'
- #Weryfikacja PHP
- echo '<?php phpinfo(); ?>' > /var/www/html/info.php
- http://localhost/info.php
- # phpMyAdmin
- apt-get -y install phpmyadmin
- # W oknach dialogowych odpowiadamy jak poniżej (odpowiedź nawigujemy tabulacją, strzałkami, a zaznaczamy spacją):
- #Web server to reconfigure automatically: <-- apache2 (Uwaga: zaznaczyć opcję spacją - musi pojawić się znak "*")
- #Configure database for phpmyadmin with dbconfig-common? <-- No
- # Weryfikacja poprawności
- http://localhost
- http://localhost/phpmyadmin
- =============
- Koniec procedury A
- Procedura B ("na skróty" - niezbędne dodatkowe składniki są instalowane jako zależności pomiędzy pakietami)
- =============
- apt-get -y install apache2 mariadb-server phpmyadmin wordpress
- #Wykonać konfigurację i weryfikację usług jak w Procedurze A
- #Następnie, konfiguracja samego wordpressa instalowanego z pakietu instalacyjnego, która jest opisana na:
- #https://wiki.debian.org/WordPress
- =========================================
- # APACHE
- ### Zatrzymywanie i uruchamianie apache, itp.
- # Demon apache nazywa się apache2
- # Uruchamianie
- systemctl start apache2.service
- # Zatrzymywanie
- systemctl stop apache2.service
- # Restart
- systemctl restart apache2.service
- # Konfiguracja uruchomienia automatycznego
- systemctl enable apache2.service
- systemctl disable apache2.service
- -------------
- ### Pliki konfiguracyjne
- # Główny plik konfiguracyjny
- /etc/apache2/apache2.conf
- # Dodatkowe pliki konfiguracyjne w podfolderach folderu
- /etc/apache2/
- # Katalog z logami
- /var/log/apache2/
- -------------
- ### Kolejność wczytywania plików
- # W jakim pliku jest zdefiniowana zmienna DirectoryIndex?
- /etc/apache2/mods-enabled/dir.conf
- -------------
- ### Serwer wirtualny na innym porcie
- # Załóż katalog /var/www/html8080 i załóż w nim witrynę (stronę WEB) w pliku index.html:
- -------------
- <!doctype html>
- <html>
- <head>
- <meta charset="UTF-8">
- <title>Tytuł</title>
- </head>
- <body>
- Strona w katalogu /var/www/html8080
- </body>
- </html>
- -------------
- # a następnie w folderze /etc/apache2/sites-available
- # utwórz plik html8080.conf o zawartości:
- -------------
- Listen 8080
- <VirtualHost 127.0.0.1:8080>
- DocumentRoot /var/www/html8080
- </VirtualHost>
- -------------
- # Włącz serwer wirtualny poleceniem:
- a2ensite html8080
- # Przeładuj (reload) serwer apache i przetestuj serwer łącząc się z adresem:
- service apache2 reload
- # Otwórz strone:
- http://127.0.0.1:8080/
- # Wyłączenie i usunięcie serwera wirtualnego
- a2dissite html8080
- systemctl reload apache2
- rm /etc/apache2/sites-available/html8080.conf
- ------------
- ### Alias witryny
- #Utworzony zostanie alias do katalogu /var/www/html8080
- # W folderze /etc/apache2/sites-available utwórz plik o nazwie "alias.conf" o zawartości:
- ------------
- alias /aliaswitryny /var/www/html8080
- <Directory /var/www/html8080>
- Order allow,deny
- Allow from all
- </Directory>
- ------------
- # Włącz serwer wirtualny poleceniem:
- a2ensite alias
- #Przeładuj (reload) serwer apache i przetestuj serwer łącząc się z adresem
- service apache2 reload
- #Otwórz strone:
- http://127.0.0.1/aliaswitryny
- ------------
- ### Uwierzytelnianie dla strony dostępnej przez alias.
- #Przejdź do katalogu /var i tam wydaj polecenie utworzenia konta z hasłem:
- cd /var
- htpasswd -c user.pass kowalski
- #(kolejnych użytkowników bez „-c” - create - utwórz)
- #Otwórz plik alias.conf i doprowadź do następującej postaci:
- gedit /etc/apache2/sites-available/alias.conf &
- --------------
- alias /aliaswitryny /var/www/html8080
- <Directory /var/www/html8080>
- Satisfy All
- AuthType Basic
- AuthName Test
- AuthUserFile /var/user.pass
- Require valid-user
- Order allow,deny
- Allow from all
- </Directory>
- --------------
- # Przeładuj (reload) serwer apache
- service apache2 reload
- # i przetestuj stronę
- http://127.0.0.1/aliaswitryny
- # !!! Uwaga!!!: Proszę nie zapamiętywać hasła w przeglądarce.
- # !!! Uwaga!!!: Przekazywanie hasła w nieszyfrowanym połaczeniu jest bardzo złym pomysłem.
- # Dlatego nastepny przykład pokazuje jak skonfigurować połacznie SSL.
- --------------
- ### SSL
- # Wersja bardzo uproszczona.
- # Certfikat nie został potwierdzony w zaufanym centrum certfikacyjnym.
- # Przegladarki będą zgłaszały ostrzeżenia o niezaufanym wystawcy certyfikatu, lub podobne.
- ### Dodaj obsługę SSL komendami:
- a2ensite default-ssl
- a2enmod ssl
- systemctl restart apache2
- # Przetestuj działanie serwera WWW (protokół https).
- https://127.0.0.1/aliaswitryny
- # !!! Uwaga!!!: Proszę nie dodawać wyjatku o certyfikacie przeglądarce na stałe.
- # W obecnej konfiguracji można ciągle jednak uzyć połaczenia niszyfrowanego.
- # Procedura ponizej wymusza SSL.
- # Edytuj alias.conf:
- --------------
- alias /aliaswitryny /var/www/html8080
- <Directory /var/www/html8080>
- SSLRequireSSL
- Satisfy All
- AuthType Basic
- AuthName Test
- AuthUserFile /var/user.pass
- Require valid-user
- Order allow,deny
- Allow from all
- </Directory>
- --------------
- # i wydaj polecenie
- systemctl restart apache2
- # Uwaga: Dla witryny w środowisku produkcyjnych (nie na laboratorium), trzeba wczesniej wygenerować prawidłowy certyfikat i odpowiednio go instalować!!! Chodzi o zgodność nazw w DNS, itp.
- # Przetestuj (uwaga na pozostałości w cache przeglądarki):
- http://127.0.0.1/aliaswitryny
- https://127.0.0.1/aliaswitryny
- -----------
- ### Zakończenie
- # Wydaj polecenia (o ile nie zrobiono wcześniej)
- a2dissite html8080
- a2dissite alias
- a2dissite default-ssl
- a2dismod ssl
- #Usuń utworzone przez Ciebie pliki w katalogu /etc/apache2/sites-available: html8080.conf i alias.conf
- rm /etc/apache2/sites-available/html8080.conf
- rm /etc/apache2/sites-available/alias.conf
- #Usuń plik /var/user.pass, katalog /var/www/html8080 oraz info.php:
- rm /var/user.pass
- rm /var/www/html/info.php
- rm -R /var/www/html8080
- # Przeładuj serwer apache i sprawdź jego funkcjonowanie.
- systemctl restart apache2
- =========================================
- Wordpress
- #Zainstalowany zostanie w podkatalogu witryny głównej o nazwie "wordress".
- #Utworzenie bazy danych dla Wordpress
- mysql -u root -p
- CREATE DATABASE wordpress;
- GRANT ALL PRIVILEGES ON wordpress.* TO 'wordpress-user'@'localhost' IDENTIFIED BY 'wordpress-pass';
- FLUSH PRIVILEGES;
- #Powyższe można też wykonac przy pomocy phpMyAdmin
- #Pobranie Wordpress
- cd /var/www/html
- wget http://wordpress.org/latest.tar.gz
- tar -xzf latest.tar.gz
- chown -R www-data:www-data /var/www/html/wordpress
- ls -al /var/www/html/wordpress
- #Otwórz http://localhost/wordpress i wykonaj procedury instalacyjne Wordpress'a
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement