LAMP企业架构实战

LAMP是一个搭建动态网站的开源软件架构,组成了一个强大的Web应用程序平台,在软件项目方面的投资成本低,因此受到整个IT行业界的关注及大量的公司使用。

image.png

1.LAMP企业安装配置:构建LAMP架构有两种方法,一是使用yum在线安装,另外一种是基于源码编译安装。

1)yum在线安装

#yum install httpd httpd-devel mysql mysql-server mysql-devel php php-devel php-mysql -y

#service httpd restart

#service mysqld restart

2)基于源码安装:LAP(CentOS+Apache+PHP):192.168.153.142

Apache: https://blog.51cto.com/sky9896/2467218

MySQL: https://blog.51cto.com/sky9896/2467552

PHP: 源码编译安装

[root@lap tools]# wget http://mirrors.sohu.com/php/php-5.3.28.tar.gz

–2020-01-20 10:12:00-- http://mirrors.sohu.com/php/php-5.3.28.tar.gz

正在解析主机 mirrors.sohu.com (mirrors.sohu.com)… 失败:未知的名称或服务。

wget: 无法解析主机地址 “mirrors.sohu.com”

[root@lap tools]# cat /etc/resolv.conf

Generated by NetworkManager

nameserver 202.101.224.68

nameserver 8.8.8.8

[root@lap tools]# tar -zxf php-5.3.28.tar.gz

[root@lap tools]# cd php-5.3.28

[root@lap php-5.3.28]#

[root@lap php-5.3.28]# ./configure --prefix=/usr/local/php5 --with-config-file-path=/usr/local/php5/etc --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-mysql=/usr/local/mysql/

configure: error: xml2-config not found. Please check your libxml2 installation.

[root@lap php-5.3.28]# yum install libxml2 libxml2-devel -y

[root@lap php-5.3.28]# ./configure --prefix=/usr/local/php5 --with-config-file-path=/usr/local/php5/etc --with-apxs2=/usr/local/apache2/bin/apxs --with-mysql=mysqlnd --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-mysql=/usr/local/mysql/

Thank you for using PHP.

[root@lap php-5.3.28]# make

In file included from /tools/php-5.3.28/ext/standard/basic_functions.c:49:0:

/tools/php-5.3.28/Zend/zend_language_parser.h:317:5: 错误:与‘zendparse’类型冲突

int zendparse (void);

/tools/php-5.3.28/Zend/zend_globals_macros.h:35:5: 附注:‘zendparse’的上一个声明在此

int zendparse(void *compiler_globals);

make: *** [ext/standard/basic_functions.lo] 错误 1

[root@lap Zend]# pwd

/tools/php-5.3.28/Zend

[root@lap Zend]# vim zend_language_parser.h

#int zendparse (void); #可以删除此条语句

int zendparse(void *compiler_globals); #添加该条语句

[root@lap php-5.3.28]# make

Build complete.

Don’t forget to run ‘make test’.

[root@lap php-5.3.28]# make install

/tools/php-5.3.28/build/shtool install -c ext/phar/phar.phar /usr/local/php5/bin

ln -s -f /usr/local/php5/bin/phar.phar /usr/local/php5/bin/phar

Installing PDO headers: /usr/local/php5/include/php/ext/pdo/

[root@lap /]# vim /etc/php.ini

LoadModule php5_module modules/libphp5.so

DirectoryIndex  index.php ndex.html index.htm

AddType application/x-httpd-php .php

[root@lap htdocs]# cat >/usr/local/apache2/htdocs/index.php <<EOF

<?php

phpinfo();

?>

EOF

image.png

2.配置Discuz PHP讨论安装:LAP(CentOS+Apache+PHP):192.168.153.142

[root@lap tools]# unzip Discuz_X3.4_SC_UTF8.zip -d /usr/local/apache2/htdocs/

bash: unzip: 未找到命令

[root@lap tools]# yum install unzip

[root@lap tools]# unzip Discuz_X3.4_SC_UTF8.zip -d /usr/local/apache2/htdocs/

[root@lap bbs]# unzip Discuz_X3.4_SC_UTF8.zip -d /usr/local/apache2/htdocs/bbs/

[root@lap tools]# cd /usr/local/apache2/htdocs/bbs/

[root@lap bbs]# mv upload/* .

[root@lap bbs]# chmod 757 -R data/ uc_server/ config/ uc_client/

3.MySQL数据库相关配置:192.168.153.143

MySQL [(none)]> create database ultrax; #先创建初始化数据库

MySQL [(none)]> grant all on ultrax.* to root@‘192.168.153.142’ identified by “sky9890”; #授权

#以上两步骤很重要,否则报以下错误:

image.png

4.Discuz PHP讨论安装过程:LAP(CentOS+Apache+PHP):192.168.153.142

2.png

image.png

image.png

7.png

image.png

image.png

image.png

image.png

小结:如何优化LAMP架构,如何拆分LAMP架构以,怎么把Apache和MySQL分开放在不同的机器上?LAMP构架拆分的目的在于缓解单台服务器的压力,可以将PHP、MySQL单独安装至多台服务器上,本次实战实现了LAP+MySQL的架构,也即是把MySQL单独拆分出去。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值