edellinen versio tästä opetusohjelma oli kirjoittanut Brennan Bearnes.
Johdanto
”LAMPPUPINO” on avoimen lähdekoodin ohjelmistojen ryhmä, joka asennetaan tyypillisesti yhteen, jotta palvelin voi isännöidä dynaamisia verkkosivustoja ja verkkosovelluksia. Tämä termi on itse asiassa lyhenne, joka edustaa Linux – käyttöjärjestelmää Apache-www-palvelimella. Sivuston tiedot tallennetaan MySQL-tietokantaan, ja dynaamista sisältöä käsittelee PHP.
tässä oppaassa asennamme LAMPPUPINON Ubuntu 18.04-palvelimelle.,
Esitiedot
jotta loppuun tämän opetusohjelman, sinun täytyy olla Ubuntu 18.04-palvelimen kanssa ei-root sudo
-käytössä käyttäjän tilin ja perus palomuuri. Tämä voidaan määrittää Ubuntu 18.04: n alustavan palvelinasetusoppaamme avulla.
Vaihe 1 — Asentaa Apache ja Päivittää Palomuuri
Apache web server on yksi suosituimmista web-palvelimia maailmassa. Se on hyvin dokumentoitu, ja se on ollut laajassa käytössä paljon historia web, mikä tekee siitä suuri oletus valinta hosting verkkosivuilla.,
Asenna Apache käyttäen Ubuntun paketinhallinnan, apt
:
- sudo apt update
- sudo apt install apache2
Koska tämä on sudo
komento, nämä toiminnot suoritetaan root-oikeuksia. Se kysyy sinulta säännöllisen käyttäjän salasanan vahvistaaksesi aikeesi.
Kun olet syöttänyt salasanasi, apt
kertoo mitkä paketit se aikoo asentaa ja kuinka paljon ylimääräistä levytilaa ne vievät. Paina Y
ja paina ENTER
jatkaa, ja asennus ei etene.,
Säädä Palomuurin Sallimaan Web-Liikennettä
Seuraava, olettaen, että olet noudattanut alkuperäisen palvelimen asetukset ohjeet ja käytössä UFW-palomuuri, varmista, että palomuuri sallii HTTP-ja HTTPS-liikennettä.,ld osoittavat, että se mahdollistaa liikenteen portit 80
ja 443
:
- sudo ufw app info "Apache Full"
OutputProfile: Apache FullTitle: Web Server (HTTP,HTTPS)Description: Apache v2 is the next generation of the omnipresent Apache webserver.Ports: 80,443/tcp
Salli saapuvan HTTP-ja HTTPS-liikennettä varten tässä profiilissa:
- sudo ufw allow in "Apache Full"
Voit tehdä pistokokeen heti tarkistaa, että kaikki meni suunnitelmien mukaan käymällä palvelimen julkinen IP-osoite web-selaimen (katso huomautus seuraavan otsikon alla selvittää, mitä sinun julkinen IP-osoite, jos sinulla ei ole tätä tietoa jo):
You will see the default Ubuntu 18.04 Apache web page, which is there for informational and testing purposes. It should look something like this:
If you see this page, then your web server is now correctly installed and accessible through your firewall.
How To Find your Server’s Public IP Address
If you do not know what your server’s public IP address is, there are a number of ways you can find it. Usually, this is the address you use to connect to your server through SSH.
There are a few different ways to do this from the command line. First, you could use the iproute2
tools to get your IP address by typing this:
- ip addr show eth0 | grep inet | awk '{ print $2; }' | sed 's/\/.*$//'
Tämä antaa sinulle kaksi tai kolme riviä takaisin., Ne ovat kaikki oikeita osoitteita, mutta tietokoneesi voi käyttää vain yhtä niistä, joten kokeile vapaasti jokaista.
vaihtoehtoinen tapa on käyttää curl
utility yhteyttä ulkopuolisen kertoa, miten se näkee palvelimelle. Tämä tehdään kysymällä tiettyyn palvelimeen, mitä IP-osoite on:
- sudo apt install curl
- curl http://icanhazip.com
menetelmästä Riippumatta käytät, jotta saat IP-osoitteen, kirjoita se selaimen osoiteriville tarkastella oletuksena Apache-sivulla.,
Vaihe 2 — MySQL
nyt kun Web-palvelin on toiminnassa, on aika asentaa MySQL. MySQL on tietokannan hallintajärjestelmä. Periaatteessa se järjestää ja tarjoaa pääsyn tietokantoihin, joissa sivustosi voi tallentaa tietoja.
Uudelleen, käytä apt
hankkia ja asentaa tämän ohjelmiston:
- sudo apt install mysql-server
Huomautus: tässä tapauksessa, sinun ei tarvitse juosta sudo apt update
ennen komennon. Tämä johtuu siitä, että olet äskettäin suorittanut sen komentoja edellä asentaa Apache., Tietokoneen pakettihakemiston pitäisi olla jo ajan tasalla.
Tämä komento, liian, näyttää luettelon paketit, jotka asennetaan yhdessä määrä levytilaa ne vievät. Syötä Y
jatkaa.
Kun asennus on valmis, suorita yksinkertainen turvallisuus-skripti, joka on valmiiksi asennettu MySQL, joka poistaa joitakin vaarallisia oletukset ja lukita pääsy tietokannan järjestelmä. Käynnistä interaktiivinen käsikirjoitus käynnissä:
- sudo mysql_secure_installation
Tämä tulee kysyä, jos haluat määrittää VALIDATE PASSWORD PLUGIN
.,
huomaa: tämän ominaisuuden mahdollistaminen on jotain tuomiopäätöstä. Jos käytössä, salasanat, jotka eivät vastaa määritettyjä kriteereitä, MySQL hylkää virheellä. Tämä aiheuttaa ongelmia, jos käytät heikko salasana yhdessä ohjelmisto, joka automaattisesti määrittää MySQL-käyttäjän tunnistetiedot, kuten Ubuntu-paketteja phpMyAdmin. On turvallista jättää validointi pois käytöstä, mutta sinun pitäisi aina käyttää vahvoja, ainutlaatuisia salasanoja tietokantatunnuksiin.
Vastaus Y
kyllä, tai jotain muuta jatkaa ilman mahdollistaminen.,
VALIDATE PASSWORD PLUGIN can be used to test passwordsand improve security. It checks the strength of passwordand allows the users to set only those passwords which aresecure enough. Would you like to setup VALIDATE PASSWORD plugin?Press y|Y for Yes, any other key for No:
Jos vastaat ”kyllä”, sinua pyydetään valitsemaan tason salasana validointi. Pidä mielessä, että jos kirjoitat 2
vahvin taso, saat virheitä, kun se yrittää asettaa minkä tahansa salasanan, joka ei sisällä numeroita, isoja ja pieniä kirjaimia ja erikoismerkkejä, tai joka perustuu sanakirjasta.
There are three levels of password validation policy:LOW Length >= 8MEDIUM Length >= 8, numeric, mixed case, and special charactersSTRONG Length >= 8, numeric, mixed case, special characters and dictionary filePlease enter 0 = LOW, 1 = MEDIUM and 2 = STRONG: 1
Riippumatta siitä, onko voit valitsi to set up VALIDATE PASSWORD PLUGIN
, palvelin seuraavan pyytää sinua valitse ja vahvista salasana MySQL root-käyttäjä., Tämä on MySQL: n hallinnollinen tili, joka on lisännyt oikeuksia. Se on samanlainen root-tilin palvelimen itse (vaikka yksi määrität nyt on MySQL-erityinen tili). Varmista, että tämä on vahva, ainutlaatuinen salasana, ja älä jätä sitä tyhjäksi.
Jos sinulla on käytössä salasana validointi, sinun on osoittanut, että salasanan vahvuus root salasana kirjoittamalla ja palvelin kysyy, haluatko vaihtaa salasanaa., Jos olet tyytyväinen nykyisen salasanasi, kirjoita N
”ei” kehotteeseen:
Using existing password for root.Estimated strength of the password: 100Change the password for root ? ((Press y|Y for Yes, any other key for No) : n
loput kysymykset, paina Y
ja paina ENTER
– näppäintä kunkin ajallaan. Tämä poistaa joitakin nimettömiä käyttäjiä ja testitietokannan, poistaa kauko root kirjautumisia, ja lataa nämä uudet säännöt niin, että MySQL välittömästi kunnioittaa muutoksia olet tehnyt.
huomaa, että Ubuntu-järjestelmissä MySQL 5.,7 (ja uudemmat versiot), root MySQL käyttäjä on asetettu todentaa käyttämällä auth_socket
plugin oletusarvoisesti sijaan salasanalla. Tämä mahdollistaa turvallisuuden ja käytettävyyden monissa tapauksissa, mutta se voi myös vaikeuttaa asioita, kun sinun täytyy sallia ulkoisen ohjelman (esim., phpMyAdmin), pääsy käyttäjä.
Jos haluat käyttää salasanaa, kun muodostat yhteyden MySQL root, sinun täytyy vaihtaa sen todentamismenetelmä alkaen auth_socket
ja mysql_native_password
., Voit tehdä tämän, avaa MySQL kehote teidän terminaali:
- sudo mysql
Seuraavaksi tarkistaa, mitä todennus-menetelmä jokaisen MySQL-käyttäjä tilit, käytä seuraavaa komentoa:
- SELECT user,authentication_string,plugin,host FROM mysql.user;
tässä esimerkissä, voit nähdä, että root-käyttäjä ei itse todentaa käyttämällä auth_socket
plugin. Voit määrittää root-tilin todentamaan salasanan, suorita seuraava ALTER USER
komento., Muista vaihtaa password
vahva salasana valitsemaltasi:
- ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
suorita FLUSH PRIVILEGES
, joka kertoo palvelimen ladata myöntää pöydät ja laittaa uudet muutokset voimaan:
- FLUSH PRIVILEGES;
Tarkista autentikointi menetelmät kunkin käyttäjät uudelleen vahvistaa, että juuri enää todentaa käyttämällä auth_socket
plugin:
- SELECT user,authentication_string,plugin,host FROM mysql.user;
Voit nähdä tämän esimerkin tuotos, että MySQL root käyttäjä nyt todentaa salasanan avulla., Kun olet vahvistanut, että tämä on oma palvelin, voit poistua MySQL-kuori:
- exit
tässä vaiheessa, tietokannan järjestelmä on nyt perustettu ja voit siirtyä asentaminen PHP, viimeinen osa LAMP pinon.
Vaihe 3 — Asennus PHP
PHP on osa sinun setup, joka käsittelee koodi näyttää dynaamista sisältöä. Se voi suorittaa skriptejä, muodostaa yhteyden MySQL-tietokantoihin saadakseen tietoa ja luovuttaa käsiteltyä sisältöä www-palvelimellesi näytettäväksi.
jälleen kerran, leverage the apt
system to install PHP., Lisäksi, sisältävät joitakin helper paketteja, tällä kertaa niin, että PHP voi toimia Apache-palvelimen ja puhua MySQL-tietokannasta:
- sudo apt install php libapache2-mod-php php-mysql
Tämä pitäisi asentaa PHP ilman mitään ongelmia. Testaamme tämän hetken päästä.
useimmissa tapauksissa haluat muuttaa tapaa, jolla Apache palvelee tiedostoja, kun hakemistoa pyydetään. Tällä hetkellä, jos käyttäjä pyytää directory server, Apache ensin etsiä tiedosto nimeltä index.html
., Haluamme kertoa web-palvelin mieluummin PHP tiedostot yli muiden, joten Apache etsiä index.php
tiedosto ensin.
Voit tehdä tämän, kirjoita tämä komento avaa dir.conf
tiedosto tekstieditoriin pääkäyttäjän oikeuksin:
- sudo nano /etc/apache2/mods-enabled/dir.conf
Se näyttää tältä:
<IfModule mod_dir.c> DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm</IfModule>
Siirrä PHP-indeksi tiedosto (korostettu kohta) ensimmäisen aseman jälkeen DirectoryIndex
erittely, kuten tämä:
<IfModule mod_dir.c> DirectoryIndex index.php index.html index.cgi index.pl index.xhtml index.htm</IfModule>
Kun olet valmis, tallenna ja sulje tiedosto painamalla CTRL+X
. Vahvista tallentaa kirjoittamalla Y
ja paina sitten ENTER
tarkista tiedosto-tallenna sijainti.
tämän Jälkeen käynnistä Apache web-palvelin, jotta muutokset voidaan tunnistaa., Tehdä tämän kirjoittamalla tämän:
- sudo systemctl restart apache2
Voit myös tarkistaa tilan apache2
palveluun systemctl
:
- sudo systemctl status apache2
Painamalla Q
poistu-tila lähtö.
PHP: n toimivuuden parantamiseksi sinulla on mahdollisuus asentaa joitakin lisämoduuleja., Voit tarkastella käytettävissä olevia vaihtoehtoja PHP-moduulit ja kirjastot, putki tulokset apt search
less
, hakulaite, jonka avulla voit selata lähtö muita komentoja:
- apt search php- | less
nuolinäppäimillä vierittää ylös ja alas, ja paina Q
lopettaa.
tulokset ovat kaikki valinnaisia komponentteja, jotka voit asentaa. Se antaa sinulle lyhyt kuvaus kustakin:
bandwidthd-pgsql/bionic 2.0.1+cvs20090917-10ubuntu1 amd64 Tracks usage of TCP/IP and builds html files with graphsbluefish/bionic 2.2.10-1 amd64 advanced Gtk+ text editor for web and software developmentcacti/bionic 1.1.38+ds1-1 all web interface for graphing of monitoring systemsganglia-webfrontend/bionic 3.6.1-3 all cluster monitoring toolkit - web front-endgolang-github-unknwon-cae-dev/bionic 0.0~git20160715.0.c6aac99-4 all PHP-like Compression and Archive Extensions in Gohaserl/bionic 0.9.35-2 amd64 CGI scripting program for embedded environmentskdevelop-php-docs/bionic 5.2.1-1ubuntu2 all transitional package for kdevelop-phpkdevelop-php-docs-l10n/bionic 5.2.1-1ubuntu2 all transitional package for kdevelop-php-l10n…:
oppia enemmän siitä, mitä kukin moduuli ei, voit etsiä internetistä lisää tietoa niistä., Vaihtoehtoisesti, katso pitkä kuvaus paketti kirjoittamalla:
- apt show package_name
Siellä on paljon tuotos, jossa yksi kenttä nimeltään Description
joka on pidempi selitys, toiminnot, että moduuli tarjoaa.,
esimerkiksi, selvittää, mitä php-cli
module ei, voit kirjoittaa tähän:
- apt show php-cli
Sekä suuri määrä muita tietoja, löydät jotain, joka näyttää tältä:
Output…Description: command-line interpreter for the PHP scripting language (default) This package provides the /usr/bin/php command interpreter, useful for testing PHP scripts from a shell or performing general shell scripting tasks. . PHP (recursive acronym for PHP: Hypertext Preprocessor) is a widely-used open source general-purpose scripting language that is especially suited for web development and can be embedded into HTML. . This package is a dependency package, which depends on Ubuntu's default PHP version (currently 7.2).…
Jos sen jälkeen, kun tutkimiseen, sinä päätät haluat asentaa paketin, voit tehdä niin käyttämällä apt install
komento, kuten on tehnyt jo muita ohjelmistoja.,
Jos olet päättänyt, että php-cli
on jotain, mitä tarvitset, voisit tyyppi:
- sudo apt install php-cli
Jos haluat asentaa enemmän kuin yksi moduuli, voit tehdä, että luettelemalla kunkin yksi, erotetaan toisistaan välilyönnillä, seuraavat apt install
komento, kuten tämä:
- sudo apt install package1 package2 ...
tässä vaiheessa, sinun LAMP pino on asennettu ja määritetty. Ennen kuin teet mitään muuta, suosittelemme, että voit määrittää Apache virtual host, jossa voit tallentaa palvelimen asetukset yksityiskohtaisesti.,
Vaihe 4 — perustetaan Virtuaalinen Hosts (Suositus)
Kun käytät Apache web-palvelin, voit käyttää virtuaalinen hosts (samanlainen server lohkojen Nginx) kiteyttää kokoonpano tiedot ja isäntä enemmän kuin yksi verkkotunnus yhdellä palvelimella. Perustamme verkkotunnuksen nimeltä your_domain, mutta sinun pitäisi korvata tämä omalla verkkotunnuksellasi. Lisätietoja verkkotunnuksen perustamisesta Digitaloceanin kanssa on esittelyssä DigitalOcean DNS.
Apache Ubuntu 18.,04: ssä on oletusarvoisesti käytössä yksi palvelinlohko, joka on määritetty palvelemaan asiakirjoja /var/www/html
hakemistosta. Vaikka tämä toimii hyvin yhden sivuston, se voi tulla kankea, jos olet hosting useita sivustoja. Sen sijaan muokkaamalla /var/www/html
, katsotaanpa luoda hakemiston rakenteen sisällä /var/www
meidän your_domain sivusto, jättäen /var/www/html
paikallaan kuin oletushakemistoon palveltavaksi, jos asiakas pyytää ei vastaa mitään muita sivustoja.,your_domain seuraavasti:
sudo mkdir /var/www/your_domain
Seuraavaksi, määrittää omistus hakemistoon $USER
ympäristö muuttuja:
- sudo chown -R $USER:$USER /var/www/your_domain
käyttöoikeudet web juuret pitäisi olla oikea, jos et ole muokannut unmask
arvo, mutta voit varmistaa kirjoittamalla:
- sudo chmod -R 755 /var/www/your_domain
Seuraavaksi, luoda näyte index.html
sivun nano
tai suosikki päätoimittaja:
- nano /var/www/your_domain/index.html
Alla, lisää seuraava näyte HTML:
<html> <head> <title>Welcome to Your_domain!</title> </head> <body> <h1>Success! The your_domain server block is working!</h1> </body></html>
Tallenna ja sulje tiedosto, kun olet valmis.
jotta Apache palvella tätä sisältöä, se on tarpeen luoda virtuaalinen isäntä tiedoston kanssa oikea direktiivejä. Sen sijaan muuttaa oletuksena asetustiedosto joka sijaitsee /etc/apache2/sites-available/000-default.conf
suoraan, tehdään uuden /etc/apache2/sites-available/your_domain.conf
:
- sudo nano /etc/apache2/sites-available/your_domain.conf
Liitä seuraava kokoonpano lohko, joka on samanlainen default,, mutta päivitetty meidän uusi hakemisto ja verkkotunnus:
Huomaa, että olemme päivittäneet DocumentRoot
meidän uusi hakemisto ja ServerAdmin
sähköpostia, että your_domain sivuston ylläpitäjä voi käyttää. Olemme myös lisänneet kaksi direktiiviä: ServerName
, joka luo pohjan verkkotunnuksen, joka pitäisi ottelu tämä virtuaalinen isäntä määritelmä, ja ServerAlias
, jossa määritellään uusia nimiä, että olisi sama, kuin jos he olivat pohjan nimi.
Tallenna ja sulje tiedosto, kun olet valmis.,
otetaan käyttöön tiedoston kanssa a2ensite
työkalu
- sudo a2ensite your_domain.conf
poista Käytöstä oletuksena päällä on määritelty 000-default.conf
:
- sudo a2dissite 000-default.conf
Seuraava, katsotaanpa testi kokoonpano virheet:
- sudo apache2ctl configtest
Sinun pitäisi nähdä seuraavat lähtö:
OutputSyntax OK
Käynnistä Apache toteuttaa muutoksia:
- sudo systemctl restart apache2
Apache pitäisi nyt olla tarjoilua verkkotunnus., Voit testata tämän siirtymällä , missä sinun pitäisi nähdä jotain tällaista:
Kanssa, että, et virtuaalinen isäntä on täysin perustettu. Ennen kuin teet mitään muutoksia tai käyttöön sovelluksen, vaikka se olisi hyödyllistä aktiivisesti testata PHP kokoonpano, jos on mitään kysymyksiä, joita olisi käsiteltävä.
Vaihe 5 — Testaus PHP Käsittely Web-Palvelin
jotta voidaan testata, että järjestelmä on määritetty oikein PHP, luoda hyvin yksinkertainen PHP-skripti nimeltään info.php
., Jotta Apache löytää tämän tiedoston ja palvella sitä oikein, se on tallennettava web root hakemistoon.
Luo tiedosto www juuri loit edellisessä vaiheessa käynnissä:
- sudo nano /var/www/your_domain/info.php
Tämä avaa tyhjä tiedosto. Lisää tiedoston sisään seuraava teksti, joka on voimassa oleva PHP-koodi:
<?phpphpinfo();?>
Kun olet valmis, tallenna ja sulje tiedosto.
nyt voit testata, pystyykö web-palvelimesi näyttämään oikein tämän PHP-skriptin tuottamaa sisältöä. Voit kokeilla tätä, käy tällä sivulla selaimessasi., Tarvitset palvelimesi julkisen IP-osoitteen uudelleen.
osoite haluat käydä on:
The page that you come to should look something like this:
This page provides some basic information about your server from the perspective of PHP. It is useful for debugging and to ensure that your settings are being applied correctly.
If you can see this page in your browser, then your PHP is working as expected.
You probably want to remove this file after this test because it could actually give information about your server to unauthorized users. To do this, run the following command:
- sudo rm /var/www/your_domain/info.php
Voit aina luoda tämä sivu, jos haluat käyttää tietoja myöhemmin uudelleen.
Johtopäätös
Nyt sinulla on LAMP pino on asennettu, sinulla on useita vaihtoehtoja, mitä tehdä seuraavaksi. Periaatteessa, olet asentanut alustan, jonka avulla voit asentaa monenlaisia sivustoja ja web-ohjelmistoja palvelimelle.
välitön seuraava askel, sinun tulee varmistaa, että yhteydet web-palvelin on suojattu, palvelemalla niiden kautta HTTPS., Helpoin vaihtoehto tässä on käyttää Let ’ s salaa turvata sivustosi ilmainen TLS / SSL-varmenne.
muita suosittuja vaihtoehtoja ovat:
- Asenna WordPress Internetin suosituin sisällönhallintajärjestelmä.
- perusti PHPMyAdmin auttamaan MySQL-tietokantojen hallinnoinnissa verkkoselaimesta.
- Opi käyttämään SFTP: tä tiedostojen siirtämiseen palvelimellesi ja palvelimeltasi.
Vastaa