本節索引
一、LAMP介紹
二、實例:LAMP搭建PhpMyAdmin
三、實例:CentOS7編譯Php-xcache
四、實例:LAMP搭建wordpress
五、實驗:centos7上源碼編譯安裝LAMP的多虛擬主機wordpress,discuz
一、LAMP介紹
LAM(M)P是一組Web應用軟件的組合,Linux+Apache+Mysql/MariaDB+Perl/PHP/Python一組
常用來搭建動態網站或者服務器的開源軟件,所有組成產品均是開源軟件,本身都是各自
獨立的程序,但是因為常被放在一起使用,擁有了越來越高的兼容度,共同組成了一個強
大的Web應用程序平臺。
L:Linux
A:Apache (httpd)
M:Mysql, Mariadb
M:Memcached
P:PHP, Perl, Python
WEB資源類型:
??? 靜態資源:原始形式與響應內容一致,在客戶端瀏覽器執行
?? 動態資源:原始形式通常為程序文件,需要在服務器端執行之后,將執行結果返回給客戶端
Web相關語言
客戶端技術: html,javascript
服務器端技術:php, jsp,python,asp
LAMP工作原理:
二、實例:LAMP搭建PhpMyAdmin
實驗環境:
Linux: ? ? ?CentOS 7.4
Apache: ??httpd-2.4.6
MariaDB:mariadb-server-5.5.56
Php,php-mysql:php-5.4.16
具體步驟:
1 下載phpMyAdmin 4.0.10.20
注:此版本支持PHP 5.2 和 MySQL 5之前,不支持 PHP 5.5 更新的版本
wget https://files.phpmyadmin.net/phpMyAdmin/4.0.10.20/phpMyAdmin-4.0.10.20-\
all-languages.tar.xz
2 解壓到httpd目錄下
tar xvf phpMyAdmin-4.0.10.20-all-languages.tar.xz -C /var/www/html/
該目錄名稱,方便操作
mv phpMyAdmin-4.0.10.20-all-languages/ phpMyAdmin
3 復制配置文件,不需要更改內容
cd phpMyAdmin/
cp config.sample.inc.php config.inc.php
安裝php-mbstring
yum install php-mbstring –y
4 重啟httpd服務
systemctl restart httpd
5 打開瀏覽器訪問http://192.168.30.10/phpMyAdmin/,出現下圖即表示PhpMyAdmin搭建成功
6使用mysql賬號進行登錄,就可進行數據庫的圖形化操作了
三、實例:CentOS7編譯Php-xcache
實驗環境:
亞馬遜云主機一臺,以WordPress搭建了www.wxlinux.com
操作系統版本:CentOS7.5
PHP版本為:5.4.16
Httpd版本為:Apache2.4.6
數據庫版本:mariadb-server-5.5.56
安全前我們測試下www.wxlinux.com的每秒請求數,為1.90次/秒
ab -c 10 -n 100 http://www.wxlinux.com/
下載最新版本Php-xcache
wget https://xcache.lighttpd.net/pub/Releases/3.2.0/xcache-3.2.0.tar.gz
解壓包到/data目錄下
tar? xvf? xcache-3.2.0.tar.gz? -C /data
cd xcache-3.2.0
此時xcache目錄下是沒有configure文件的,我們需要使用phpize命令生成它
安裝php-devlop包
yum install php-devlop
yum install gcc
生成編譯環境
phpize
查看下php-config文件位置
[root@wxlinux ~]#which php-config
/bin/php-config
編譯安裝
./configure –enable-xcache –with-php-config=/bin/php-config
make && make install
cp xcache-3.2.0/xcache.ini /etc/php.d/
重啟http服務使其生效
systemctl restart httpd.service
再次進行測試,每秒請求數提升到3.95
四、實例:LAMP搭建wordpress
前期準備:
操作系統版本:CentOS7.5
PHP版本為:5.4.16
Httpd版本為:Apache2.4.6
數據庫版本:mariadb-server-5.5.56
配置環境:
yum install httpd php mariadb-server php-mysql -y
啟動相應服務
systemctl start httpd mariadb
為數據庫設置root賬號密碼
mysqladmin -u root password “XXXXXXXX”
創建一個名為wordpress的數據庫
mysql> create database wordpress;
下載wordpress
wget http://wordpress.org/latest.tar.gz
解壓安裝包
tar –zxf latest.tar.gz -C /var/www/html
注意wordpress目錄權限
setfacl -R -m u:apache:rwx /var/www/html/wordpress
重啟httpd服務
systemctl restart httpd
瀏覽器打開:http://192.168.30.10/wordpress
簡單的進行一些配置,即可完成wordpress的搭建
五、實驗:centos7上源碼編譯安裝LAMP的多虛擬主機wordpress,discuz
前期準備:
虛擬機兩臺
LAMP server: CentOS 7.5,完全干凈的系統環境? IP:192.168.30.17
Client: ? ? ? ? ? ? ?CentOS7.4 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? IP:192.168.30.10
準備以下安裝包
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
Discuz_X3.3_SC_UTF8.zip
1.編譯安裝httpd
tar xvf httpd-2.4.33.tar.bz2
tar xvf apr-1.6.3.tar.gz
tar xvf apr-util-1.6.1.tar.gz
cp -av apr-util-1.6.1 httpd-2.4.33/srclib/apr-util
cp -av apr-1.6.3 httpd-2.4.33/srclib/apr
./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
echo PATH=/app/httpd24/bin:$PATH > /etc/profile.d/lamp.sh
. /etc/profile.d/lamp.sh
開啟httpd服務
apachectl
2.二進制安裝mariadb
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
cd mysql/
./scripts/mysql_install_db –datadir=/data/mysql –user=mysql
vim /etc/my.cnf
datadir=/data/mysql
chkconfig –add mysqld
chkconfig –list
service mysqld start
ss -ntl
創建wordpress數據庫,和管理用戶
MariaDB [(none)]> create database wordpress;
MariaDB [(none)]> grant all on wordpress.* to wpuser@’192.168.30.%’ identified by ‘centos’;
3.編譯安裝fastcgi模式的php
tar xvf php-7.1.18.tar.bz2
cd php-7.1.18/
./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
make && make install
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
ss -ntl
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
. /etc/profile.d/lamp.sh
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
重啟httpd服務
apache restart
4.安裝wordpress
解壓安裝包
tar –zxf ?– wordpress-4.9.4-zh_CN.tar.gz -C /app/httpd24/htdocs/blog
注意wordpress目錄權限
setfacl -R -m u:apache:rwx /var/www/html/wordpress
重啟httpd服務
systemctl restart httpd
5.安裝Discuz
mv Discuz_X3.3_SC_UTF8.zip /app/httpd24/htdocs/bbs/
cd /app/httpd24/htdocs/bbs/
unzip mv Discuz_X3.3_SC_UTF8.zip
配置虛擬主機
修改配置文件,開啟虛擬主機配置目錄
vim httpd-vhosts.conf
# Virtual hosts
Include conf/extra/httpd-vhosts.conf?????? 找到此行,去掉注釋
6.配置虛擬主機
vim /app/httpd24/conf/extra/httpd-vhosts.conf
<virtualhost *:80>
??? servername www.blog.com
??? documentroot /app/httpd24/htdocs/blog/wordpress
??? DirectoryIndex index.php
??? ProxyRequests Off
??? ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/app/httpd24/htdocs/blog/wordpress/$1
</virtualhost>
<virtualhost *:80>
??? servername www.bbs.com
??? documentroot /app/httpd24/htdocs/bbs
??? DirectoryIndex index.php
??? ProxyRequests Off
??? ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9000/app/httpd24/htdocs/bbs/$1
</virtualhost>
7.測試:
此時切換到另外一臺主機訪問www.blog.com及www.bbs.com
為了方便實現,這里修改hosts文件模擬DNS
加入此行:
vim /etc/hosts
192.168.30.17 www.blog.com www.bbs.com
切換到圖形界面,打開firefox瀏覽器直接輸入www.blog.com,直接轉向了wordpress的安裝頁面
輸入www.bbs.com,則直接轉向了wordpress的安裝頁面
至此,我們完成了編譯LAPM,基于主機頭的wordpress和Discuz的安裝!
本文來自投稿,不代表Linux運維部落立場,如若轉載,請注明出處:http://www.www58058.com/101391