課堂實驗

實驗:實現Gelera cluster

三臺主機
1 yum安裝
[mariadb]
name = MariaDB
baseurl = https://mirrors.tuna.tsinghua.edu.cn/mariadb/mariadb-5.5.60/yum/centos7-amd64/
gpgcheck=0

httpd2.2

order deny,allow

allow from 192.168.30.6
deny from 192.168.30.0/24

AuthType Basic
AuthName “welcome to access admin dir”
AuthUserFile “/etc/httpd/conf.d/.httpuser”
require user tom jerry

實驗:實現基于用戶家目錄的驗證訪問

vim /etc/httpd/conf.d/userdir.conf
<IfModule mod_userdir.c>
UserDir public_html
</IfModule>

#
# Control access to UserDir directories. The following is an example
# for a site where these directories are restricted to read-only.
#
#<Directory “/home/*/public_html”>
# AllowOverride FileInfo AuthConfig Limit Indexes
# Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
# Require method GET POST OPTIONS
#</Directory>

<directory /home/wang/public_html>
authType Basic
AuthName “wang home dir”
AuthUserFile “/etc/httpd/conf.d/.httpuser”
AuthGroupFile “/etc/httpd/conf.d/.httpgroup”
Require group g1
</directory>

實驗:實現狀態頁
#vim /etc/httpd/conf.d/test.conf
<Location “/status”>
SetHandler server-status
Require all granted
</Location>

實驗:基于端口號的虛擬主機

listen 81
listen 82
listen 83

<directory /data/>
require all granted
</directory>
<VirtualHost *:81>
DocumentRoot “/data/website1”
ServerName www.a.com
ErrorLog “logs/a.com.error_log”
TransferLog “logs/a.com-access_log”
</VirtualHost>

<VirtualHost *:82>
DocumentRoot “/data/website2”
ServerName www.b.com
ErrorLog “logs/b.com.error_log”
TransferLog “logs/b.com-access_log”
</VirtualHost>

<VirtualHost *:83>
DocumentRoot “/data/website3”
ServerName www.c.com
ErrorLog “logs/c.com.error_log”
TransferLog “logs/c.com-access_log”
</VirtualHost>

實驗:基于IP的虛擬主機

<directory /data/>
require all granted
</directory>
<VirtualHost 192.168.30.11:80>
DocumentRoot “/data/website1”
ServerName www.a.com
ErrorLog “logs/a.com.error_log”
TransferLog “logs/a.com-access_log”
</VirtualHost>

<VirtualHost 192.168.30.22:80>
DocumentRoot “/data/website2”
ServerName www.b.com
ErrorLog “logs/b.com.error_log”
TransferLog “logs/b.com-access_log”
</VirtualHost>

<VirtualHost 192.168.30.33:80>
DocumentRoot “/data/website3”
ServerName www.c.com
ErrorLog “logs/c.com.error_log”
TransferLog “logs/c.com-access_log”
</VirtualHost>

實驗:基于主機頭的虛擬主機

<directory /data/>
require all granted
</directory>
<VirtualHost *:80>
DocumentRoot “/data/website1”
ServerName www.a.com
ErrorLog “logs/a.com.error_log”
TransferLog “logs/a.com-access_log”
</VirtualHost>

<VirtualHost *:80>
DocumentRoot “/data/website2”
ServerName www.b.com
ErrorLog “logs/b.com.error_log”
TransferLog “logs/b.com-access_log”
</VirtualHost>

<VirtualHost *:80>
DocumentRoot “/data/website3”
ServerName www.c.com
ErrorLog “logs/c.com.error_log”
TransferLog “logs/c.com-access_log”
</VirtualHost>
~
實驗:實現HTTPS

yum install mod_ssl
vim /etc/httpd/conf.d/ssl.conf
SSLCertificateFile /etc/httpd/conf.d/ssl/httpd.crt
SSLCertificateKeyFile /etc/httpd/conf.d/ssl/httpd.key
SSLCACertificateFile /etc/httpd/conf.d/ssl/cacert.pem

實驗:編譯安裝httpd.2.4.33

www.magedu.com/test.php

LAMP
yum install openssl-devel expat-devel pcre-devel

yum install httpd php php-mysql mairadb-server

systemctl start mariadb httpd

實戰:LAMP實現PHPMYadmin
實戰:LAMP實現wordpress
實戰:編譯安裝xcache加速php

yum groupinstall “development tools”
yum install php-devel
tar xvf xcache-3.2.0.tar.gz
cd /root/xcache-3.2.0/
phpize
./configure –enable-xcache –with-php-config=/usr/bin/php-config
make -j 4 && make install

cp xcache.ini /etc/php.d/
systemctl restart httpd

實驗:LAMP fastcgi模式實現多虛擬主機blog和bbs

bbs 目錄權限
setfacl -R -m u:apache:rwx /data/www/

[root@centos7 conf.d]#vim vhosts.conf
<virtualhost *:80>
servername www.bbs.com
documentroot /data/www
DirectoryIndex index.php
ProxyRequests Off
ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/data/www/$1
<directory /data/www>
require all granted
</directory>
</virtualhost>

<virtualhost *:80>
servername www.blog.com
documentroot /data/www2
DirectoryIndex index.php
ProxyRequests Off
ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/data/www2/$1
<directory /data/www2>
require all granted
</directory>
</virtualhost>

實驗:centos7上源碼編譯安裝LAMP的多虛擬主機wordpress,discuz,用lamp.sh腳本實現

環境:
centos7.4
apr-1.6.3.tar.gz
apr-util-1.6.1.tar.gz
httpd-2.4.33.tar.bz2
mariadb-10.2.15-linux-x86_64.tar.gz
php-7.1.18.tar.bz2
wordpress-4.9.4-zh_CN.tar.gz

1安裝包:

yum groupinstall “development tools”
yum install pcre-devel openssl-devel expat-devel libxml2-devel bzip2-devel libmcrypt-devel

2 編譯安裝httpd

./configure –prefix=/app/httpd24 \
–enable-so \
–enable-ssl \
–enable-cgi \
–enable-rewrite \
–with-zlib \
–with-pcre \
–with-included-apr \
–enable-modules=most \
–enable-mpms-shared=all \
–with-mpm=prefork

make && make install

2 配置mysql
tar xvf mariadb-10.2.15-linux-x86_64.tar.gz -C /usr/local/
cd /usr/local/
ln -s mariadb-10.2.15-linux-x86_64/ mysql
useradd -r -s /sbin/nologin mysql
chown -R mysql.mysql mysql/
mkdir /data/mysql -pv
chown mysql.mysql /data/mysql/
vim /etc/profile.d/lamp.sh
PATH=/appl/httpd24/bin:/usr/local/mysql/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin
. /etc/profile.d/lamp.sh
./scripts/mysql_install_db –datadir=/data/mysql –user=mysql
cp support-files/my-huge.cnf /etc/my.cnf
cp support-files/mysql.server /etc/init.d/mysqld
vim /etc/my.cnf
datadir=/data/mysql

chkconfig –add mysqld
chkconfig –list
service mysqld start
ss -ntl

mysql >create database wpdb;
mysql >grant all on wpdb.* to wpuser@’192.168.30.%’ identified by ‘centos’;

3編譯安裝 fastcgi 模式的php

./configure –prefix=/app/php \
–enable-mysqlnd \
–with-mysqli=mysqlnd \
–with-openssl \
–with-pdo-mysql=mysqlnd \
–enable-mbstring \
–with-freetype-dir \
–with-jpeg-dir \
–with-png-dir \
–with-zlib \
–with-libxml-dir=/usr \
–enable-xml \
–enable-sockets \
–enable-fpm \
–with-config-file-path=/etc \
–with-config-file-scan-dir=/etc/php.d \
–enable-maintainer-zts \
–disable-fileinfo

cd /root/srcs/php-7.1.18/
cp php.ini-production /etc/php.ini
cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
chmod +x /etc/init.d/php-fpm
chkconfig –add php-fpm
chkconfig php-fpm on
cd /app/php/etc
cp php-fpm.conf.default php-fpm.conf
cp php-fpm.d/www.conf.default php-fpm.d/www.conf
service php-fpm start

vim /etc/profile.d/lamp.sh
PATH=/app/php/bin:/app/php/sbin:/app/httpd24/bin:/usr/local/mysql/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root
/bin

vim /app/httpd24/conf/httpd.conf
取消下面兩行的注釋
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
修改下面行
<IfModule dir_module>
DirectoryIndex index.php index.html
</IfModule>
addType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps
ProxyRequests Off
ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/app/httpd24/htdocs/$1

4 測試

實驗:實現loganalyzer展示圖形日志
三臺主機
rsyslog ,mysql ,loganalyzer

1 rsyslog

yum install rsyslog-mysql
scp /usr/share/doc/rsyslog-8.24.0/mysql-createDB.sql 192.168.30.17:
vim /etc/rsyslog.conf
$ModLoad ommysql
*.info;mail.none;authpriv.none;cron.none :ommysql:192.168.30.17,Syslog,syslog,centos

2 mysql
mysql < mysql-createDB.sql
mysql> grant all on Syslog.* to syslog@’192.168.30.%’ identified by ‘centos’;
mysql> flush privileges;

3 loganalyzer
yum install httpd php php-mysql php-gd
systemctl restart httpd
tar xvf loganalyzer-4.1.6.tar.gz

cp -r loganalyzer-4.1.6/src /var/www/html/log

touch /var/www/html/log/config.php
chmod 666 /var/www/html/log/config.php

http://loganalyzer/log

chmod 644 /var/www/html/log/config.php

QQ截圖20180624172451

本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/101585

(0)
你的命字你的命字
上一篇 2018-06-24
下一篇 2018-06-24

相關推薦

  • Linux運維學習的常用命令總結以及需要注意的地方(1)

    逆水行舟,不進則退 ,大家共勉之!
    1.在linux安裝階段可能會用到的命令
    2.設置網絡相關的命令
    3.用戶頻道的切換以及用戶相關信息的查看
    4.系統當前的shell信息以及別名、內部命令、外部命令相關

    2018-04-02
  • linux基礎

    linux基礎命令

    2018-04-08
  • 第5周

    整理

    Linux筆記 2018-04-30
  • N30-Listen學習匯總

    1.描述計算機的組成及其功能 計算機由CPU,存儲器,I/O設備等部件組成計算機,每一部件分別按要求執行特定的基本功能。 ? ? CPU包含運算器、控制器以及寄存器,其中運算器主要是對數據進行各種運算;而控制器是整個計算機系統的控制中心,負責指揮計算機各部分協調地工作,保證計算機按照預先規定的目標和步驟有條不紊地進行操作及處理;寄存器則用來保存指令執行過程中…

    2018-05-13
  • 喜歡上find

    喜歡上findfind :查找目錄下的文件。find 命令其實很好記,會用了,那簡直太好玩太方便了-newer查找更改時間比指定文件新的文件-type 按類型查找 (d f l s b c p )D-name 按文件名查找-mtime 按修改時間查找( +2 -2 2)-size 按文件大小查找-perm 按文件權限查找-user 按文件屬主來查找-nous…

    2018-04-18
  • 相信過程-馬哥教育

    IT工程師工作和學習都是比較枯燥的,過于目標化忽略了過程本身并不適合我,如果我來這里能使我全心全意投入到一段學習當中,我覺得來這里目標就達到了。其他的事情自然會水到渠成。 大家共勉!

    2018-07-21
欧美性久久久久