APACHE
Pagrindinis failų talpinimo katalogas /var/www/html/
# apt-get install apache2 # Debian apache instaliavimas
# yum install httpd # CentOS 6/7
# yum install "Web Server" # Visi CentOS 7 web serveriui reikalingi paketai
Paleidimas:
Perkrovimas:
# systemctl restart httpd.service # CentOS 7/Ubuntu - apache paketas.
# service httpd restart # CentOS 6.8
# /etc/init.d/httpd restart
# apache2ctl restart
Stabdymas:
# systemctl stop httpd.service # CentOS 7/Ubuntu - apache paketas.
# service httpd stop # CentOS 6.8
Apache konfiguracijos tikrinimas:
# apachectl configtest
# apachectl graceful
Teisių priskirimas apache vartotojui, kad galėtų kurti ir keisti dokumentus:
# chown -R www-data:www-data /var/www/ # Ubuntu
# chown -R apache:apache /var/www/ # CentOS
PHP diegimas
Ubuntu
# apt-get install php5
# apt-get install libapache2-mod-php5
# /etc/init.d/apache2 start /stop/restart
# apachectl start /stop/restart
CentOS 6/7
# yum install php
conf.d/ kataloge atsirado naujas modulis.
Perkraunam httpd, tam kad įsigaliotų naujas modulis.
# systemctl restart httpd
# tree /etc/httpd/conf.d/
├── autoindex.conf
├── main.conf
├── manual.conf
├── moodle.conf
├── php.conf *
├── README
├── userdir.conf
└── welcome.conf
mysql diegimas
CentOS 6
# yum install mysql-server php php-mysql
CentOS7
Reikalingas php modelis, kad php galėtų bendrauti su mysq.
# yum install php-mysql mariadb mariadb-server
# systemctl status mariadb.service # tikrinam servisą
● mariadb.service - MariaDB database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; disabled; vendor preset: disabled)
Active: inactive (dead)
Įgalinam ir paleidžiam mysql servisą.
# systemctl enable mariadb.service
# systemctl start mariadb.service
Apsaugom duomenų bazę.
# mysql_secure_installation
/usr/bin/mysql_secure_installation
Pavyzdys, kaip kurti mysql db ir vartotojus per cli.
# mysql -u root -e "create database wordpress; GRANT ALL PRIVILEGES ON wordpress.* TO username@localhost IDENTIFIED BY 'password'"
Darbas su duomenų bazėmis.
Kaip automatiškai įjungti mysql, apache po perkrovimo ?
# chkconfig --list | egrep "http|mysql" # Tikrinam servisus
# chkconfig httpd on && chkconfig mysqld on # Įgalinam servisus
CentOS6
chkconfig mysqld on
chkconfig httpd on
CentOS7
chkconfig mariadb on
chkconfig httpd on
phpadmin
# apt-get -y install mysql-server
# apt-get -y install phpmyadmin
# dpkg-reconfigure phpmyadmin # phpadmin perkonfigūravimas
curl
# apt-get install curl libcurl3 libcurl3-dev php5-curl
Ugniasienė ir iptables su RHEL6/7:
Redhad 7 firewall nustatymus galima pakeisti, Firewall gui programoje.
Redhad 6 ar senesnėse versijose taisyklės turi būti įrašytos: /etc/sysconfig/iptables kataloge:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
Cenos7 httpd konfigūraciniai dokumentai:
[root@localhost httpd]# tree
.
├── conf
│ ├── httpd.conf
│ └── magic
├── conf.d
│ ├── autoindex.conf
│ ├── manual.conf
│ ├── README
│ ├── userdir.conf
│ └── welcome.conf
├── conf.modules.d
│ ├── 00-base.conf
│ ├── 00-dav.conf
│ ├── 00-lua.conf
│ ├── 00-mpm.conf
│ ├── 00-proxy.conf
│ ├── 00-systemd.conf
│ └── 01-cgi.conf
├── logs -> ../../var/log/httpd
├── modules -> ../../usr/lib64/httpd/modules
└── run -> /run/httpd
conf -pagrindiniai konfigūraciniai failai
conf.d - nustatymai, kur bus virtualus hostai ir modeliai kuri užkrauna apache, pvz:, php.
logs -> simboliniai linkai
Ubuntu 16.04 apache2/ konfigūraciniai dokumentai:
/etc/apache2 $ tree
.
├── apache2.conf
├── conf-available
│ ├── charset.conf
│ ├── javascript-common.conf
│ ├── localized-error-pages.conf
│ ├── other-vhosts-access-log.conf
│ ├── security.conf
│ └── serve-cgi-bin.conf
├── conf-enabled
│ ├── charset.conf -> ../conf-available/charset.conf
│ ├── localized-error-pages.conf -> ../conf-available/localized-error-pages.conf
│ ├── other-vhosts-access-log.conf -> ../conf-available/other-vhosts-access-log.conf
│ ├── security.conf -> ../conf-available/security.conf
│ └── serve-cgi-bin.conf -> ../conf-available/serve-cgi-bin.conf
├── envvars
├── magic
├── mods-available
│ ├── access_compat.load
│ ├── actions.conf
│ ├── actions.load
│ ├── alias.conf
│ ├── alias.load
│ ├── allowmethods.load
│ ├── asis.load
│ ├── auth_basic.load
│ ├── auth_digest.load
│ ├── auth_form.load
...
│ ├── status.conf -> ../mods-available/status.conf
│ └── status.load -> ../mods-available/status.load
├── ports.conf
├── sites-available
│ ├── 000-default.conf
│ └── default-ssl.conf
└── sites-enabled
└── 000-default.conf -> ../sites-available/000-default.conf
Virtualaus hosto kūrimas
CentOS7 /etc/httpd/conf.d/moodle.conf
<VirtualHost *:80>
ServerName "192.168.56.111"
DocumentRoot "/var/www/http/moodle"
</VirtualHost>
<VirtualHost *:80> # "*" rodo visus ip adresus, :80 - priskiria portą.
ServerName - # vardas kuriuo bus bus atpažintas virtualus host.
DocumentRoot - # Nurodo kur talpinami pirminiai tinklapio dokumentai.
Dabar serveryje galima bus prieiti prie localhost/moodle puslapio.
SSL konfigūravimas:
CentOS7
# yum install mod_ssl
Ranktas yra sugeneruojamas kai įdiegiamas mod_ssl paketas ir patalpinamas:
/etc/pki/tls/private/localhost.key - raktas
Kitos konfigūracijos.
Apache raidžių jautrumo išjungimas Ubuntu serveriui.
Darbas su duomenų bazėm.
Kaip leisti priėjimą iš remote.
Pagrindinis failų talpinimo katalogas /var/www/html/
# apt-get install apache2 # Debian apache instaliavimas
# yum install httpd # CentOS 6/7
# yum install "Web Server" # Visi CentOS 7 web serveriui reikalingi paketai
Paleidimas:
# systemctl enable httpd # Įgalinam servisą CentOS 7/Ubuntu - apache paketas.
# systemctl start httpd # Paleidžiam httpd servisą.
# systemctl staus httpd # Tikrinam httpd stausą.
# systemctl staus httpd # Tikrinam httpd stausą.
# service httpd start start # CentOS 6.8
# /etc/init.d/httpd start
# apache2ctl start
# systemctl restart httpd.service # CentOS 7/Ubuntu - apache paketas.
# service httpd restart # CentOS 6.8
# /etc/init.d/httpd restart
# apache2ctl restart
Stabdymas:
# systemctl stop httpd.service # CentOS 7/Ubuntu - apache paketas.
# service httpd stop # CentOS 6.8
# /etc/init.d/apache2 stop
# apache2ctl stop Apache konfiguracijos tikrinimas:
# apachectl configtest
# apachectl graceful
Teisių priskirimas apache vartotojui, kad galėtų kurti ir keisti dokumentus:
# chown -R www-data:www-data /var/www/ # Ubuntu
# chown -R apache:apache /var/www/ # CentOS
PHP diegimas
Ubuntu
# apt-get install php5
# apt-get install libapache2-mod-php5
# /etc/init.d/apache2 start /stop/restart
# apachectl start /stop/restart
CentOS 6/7
# yum install php
conf.d/ kataloge atsirado naujas modulis.
Perkraunam httpd, tam kad įsigaliotų naujas modulis.
# systemctl restart httpd
# tree /etc/httpd/conf.d/
├── autoindex.conf
├── main.conf
├── manual.conf
├── moodle.conf
├── php.conf *
├── README
├── userdir.conf
└── welcome.conf
PHP Direktyvos:
Siuntimo maksimalus dokumento dydis 2MB.
upload_max_filesize
Dokumentų siuntimo į serverį dydis, neturėtų būti mažesnis už "upload_max_filesize".
post_max_size
Numatytoji reikšmė apie 13s. Siunčiant didesnį dokumentą laiką reiktų pakeisti didesne reikšme.
max_execution_time
php informacija per komandinę eilutę.
php -i
php konfigūracijos keitimas.
vim /etc/php.ini
php atvaizdavimas puslapyje.
#file:/var/www/html/info.php
<?php
phpinfo();
?>
mysql diegimas
CentOS 6
# yum install mysql-server php php-mysql
CentOS7
Reikalingas php modelis, kad php galėtų bendrauti su mysq.
# yum install php-mysql mariadb mariadb-server
# systemctl status mariadb.service # tikrinam servisą
● mariadb.service - MariaDB database server
Loaded: loaded (/usr/lib/systemd/system/mariadb.service; disabled; vendor preset: disabled)
Active: inactive (dead)
Įgalinam ir paleidžiam mysql servisą.
# systemctl enable mariadb.service
# systemctl start mariadb.service
Apsaugom duomenų bazę.
# mysql_secure_installation
/usr/bin/mysql_secure_installation
Pavyzdys, kaip kurti mysql db ir vartotojus per cli.
# mysql -u root -e "create database wordpress; GRANT ALL PRIVILEGES ON wordpress.* TO username@localhost IDENTIFIED BY 'password'"
Darbas su duomenų bazėmis.
Kaip automatiškai įjungti mysql, apache po perkrovimo ?
# chkconfig --list | egrep "http|mysql" # Tikrinam servisus
# chkconfig httpd on && chkconfig mysqld on # Įgalinam servisus
CentOS6
chkconfig mysqld on
chkconfig httpd on
CentOS7
chkconfig mariadb on
chkconfig httpd on
# apt-get -y install mysql-server
# apt-get -y install phpmyadmin
# dpkg-reconfigure phpmyadmin # phpadmin perkonfigūravimas
curl
# apt-get install curl libcurl3 libcurl3-dev php5-curl
Ugniasienė ir iptables su RHEL6/7:
Redhad 7 firewall nustatymus galima pakeisti, Firewall gui programoje.
Redhad 6 ar senesnėse versijose taisyklės turi būti įrašytos: /etc/sysconfig/iptables kataloge:
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 443 -j ACCEPT
Arba komanda:
sudo iptables -I INPUT -p tcp --dport 80 -j ACCEPT
sudo iptables -I INPUT -p tcp --dport 443 -j ACCEPT
sudo service iptables save #išsaugome pakeitimus
Cenos7 httpd konfigūraciniai dokumentai:
[root@localhost httpd]# tree
.
├── conf
│ ├── httpd.conf
│ └── magic
├── conf.d
│ ├── autoindex.conf
│ ├── manual.conf
│ ├── README
│ ├── userdir.conf
│ └── welcome.conf
├── conf.modules.d
│ ├── 00-base.conf
│ ├── 00-dav.conf
│ ├── 00-lua.conf
│ ├── 00-mpm.conf
│ ├── 00-proxy.conf
│ ├── 00-systemd.conf
│ └── 01-cgi.conf
├── logs -> ../../var/log/httpd
├── modules -> ../../usr/lib64/httpd/modules
└── run -> /run/httpd
conf -pagrindiniai konfigūraciniai failai
conf.d - nustatymai, kur bus virtualus hostai ir modeliai kuri užkrauna apache, pvz:, php.
logs -> simboliniai linkai
Ubuntu 16.04 apache2/ konfigūraciniai dokumentai:
/etc/apache2 $ tree
.
├── apache2.conf
├── conf-available
│ ├── charset.conf
│ ├── javascript-common.conf
│ ├── localized-error-pages.conf
│ ├── other-vhosts-access-log.conf
│ ├── security.conf
│ └── serve-cgi-bin.conf
├── conf-enabled
│ ├── charset.conf -> ../conf-available/charset.conf
│ ├── localized-error-pages.conf -> ../conf-available/localized-error-pages.conf
│ ├── other-vhosts-access-log.conf -> ../conf-available/other-vhosts-access-log.conf
│ ├── security.conf -> ../conf-available/security.conf
│ └── serve-cgi-bin.conf -> ../conf-available/serve-cgi-bin.conf
├── envvars
├── magic
├── mods-available
│ ├── access_compat.load
│ ├── actions.conf
│ ├── actions.load
│ ├── alias.conf
│ ├── alias.load
│ ├── allowmethods.load
│ ├── asis.load
│ ├── auth_basic.load
│ ├── auth_digest.load
│ ├── auth_form.load
...
│ ├── status.conf -> ../mods-available/status.conf
│ └── status.load -> ../mods-available/status.load
├── ports.conf
├── sites-available
│ ├── 000-default.conf
│ └── default-ssl.conf
└── sites-enabled
└── 000-default.conf -> ../sites-available/000-default.conf
Virtualaus hosto kūrimas
CentOS7 /etc/httpd/conf.d/moodle.conf
<VirtualHost *:80>
ServerName "192.168.56.111"
DocumentRoot "/var/www/http/moodle"
</VirtualHost>
<VirtualHost *:80> # "*" rodo visus ip adresus, :80 - priskiria portą.
ServerName - # vardas kuriuo bus bus atpažintas virtualus host.
DocumentRoot - # Nurodo kur talpinami pirminiai tinklapio dokumentai.
Dabar serveryje galima bus prieiti prie localhost/moodle puslapio.
SSL konfigūravimas:
CentOS7
# yum install mod_ssl
Ranktas yra sugeneruojamas kai įdiegiamas mod_ssl paketas ir patalpinamas:
/etc/pki/tls/private/localhost.key - raktas
/etc/pki/tls/certs/localhost.crt - sukuriamas self-signed sertifikatas, panaudojant raktą.
Konfigūracinėje rinkmenoje reikia pakeisti SSLCertificateFile ir SSLCertificateKeyFile
/etc/httpd/conf.d/ssl.conf - | www | Pagrindinė .conf rinkmena | Paketo pavadinimas | |
---|---|---|---|---|
Cenos 6/7 | /var/www/html/ | /etc/httpd/conf/httpd.conf | httpd | |
Ubuntu 16.04 | /var/www/html/ | /etc/apache2/apache2.conf | apache2 | |
Kitos konfigūracijos.
Apache raidžių jautrumo išjungimas Ubuntu serveriui.
Darbas su duomenų bazėm.
Kaip leisti priėjimą iš remote.