LAMP服务搭建详解
来源:互联网 发布:化学分子模型淘宝 编辑:程序博客网 时间:2024/05/24 04:57
LAMP搭建实验:CentOS7
拓扑结构及主机说明:
主机名 IPSERVER_NAME XXX.rpm
A 172.16.254.147httpd-server httpd-2.4
B 172.16.7.1php-fpm-server php php-fpmphp php-mysqlphp-mbstring php-mcryptphp-xcache
C 172.16.7.2mysql-server mariadb php-mysql
准备工作:
<1.软件安装全部使用yum
<2.关闭所有主机的iptables和selinux,防止影响实验顺利进行,执行如下命令:
~]# iptables -F && iptables -X && systemctl stop firewalld && setenforce 0
各主机配置如下:
1、httpd-server主机:
<1. 配置httpd配置文件
【注意】CentOS7下,无需修改httpd的主配置文件,因为CentOS7中,当虚拟主机存在时会默认禁用httpd主机的配置文件(CentOS6下需要禁用掉httpd主机,才可以启用虚拟主机功能,方式是注释掉httpd主配置文件的DocumentRoot一行),所以可以直接进入/etc/httpd/conf.d/目录下新建并编辑虚拟主机配置文件即可
~]# vim /etc/httpd/conf.d/virutalhost1.conf
DirectoryIndex index.php
KeepAlive On
KeepAliveTimeout 15
MaxKeepAliveRequests 100
<VirtualHost *:80>
DocumentRoot "/web/httpd/html/www3.achudk.com"
ServerName www3.achudk.com
ProxyRequests Off
ProxyPassMatch ^/(.*\.php)$ fcgi://172.16.7.1:9000/apache-resourse/html/$1
ErrorLog "/web/httpd/log/vh1/error_log"
CustomLog "/web/httpd/log/vh1/access_log" combined
<Directory "/web/httpd/html/www3.achudk.com">
Options FollowSymLinks
AllowOverRide None
Require all granted
</Directory>
</VirtualHost>
<2. 创建httpd访问文档目录
~]# mkdir /web/httpd/www3.achudk.com -pv && mkdir /web/httpd/www4.achudk.com
<3. 在DocumentRoot目录下创建资源(静态或动态)
]# echo "welctom to www3.achudk.com" > index.html
]# echo > index.php
也可以把wordpress程序整个目录放置在此处
~]# cd /web/httpd/www3.achudk.com/ && unzip wordpress-4.7.4-zh_CN.zip
]# cp -R wordpress/ ../www4.achudk.com/
【notes】因为在httpd虚拟主机配置文件中,是根据客户端请求的资源的文件名后缀是否为" .php " 而决定是否使用php-fpm代理的,与后缀为" .php "的文件的内容无关,所以无需修改wordpress文件中的配置文件,index.php文件中也无需有内容,只需在php-fpm代理服务器端处在对应的文件中指定内容即可。
<4. 检查配置文件语法,无误后启动服务
~]# httpd -t
~]# systemctl start httpd
2、php-fpm-server主机:
<1.创建动态php资源存储目录并创建相应的动态资源文件
]# mkdir -pv /apache-resourse/html
]# vim /apache-resoutse/html/index.php
<?php
phpinfo();
?>
<2.安装wordpress程序文件至此目录并设定其配置文件
]# unzip wordpress-4.7.4-zh_CN.zip && cd wordpress
]# cp wp-config-sample.php wp-config.php
]# vim wp-config.php
// ** MySQL 设置 - 具体信息来自您正在使用的主机 ** //
/** WordPress数据库的名称 */
define('DB_NAME', 'wpdb');
/** MySQL数据库用户名 */
define('DB_USER', 'wpuser');
/** MySQL数据库密码 */
define('DB_PASSWORD', 'wppasswd');
/** MySQL主机 */
define('DB_HOST', '172.16.7.2');==> 必填项
*** <3.设置代理配置文件
]# vim /etc/php-fpm.d/www.conf
[www]
listen = 172.16.7.2:9000==> 此处填写本主机的IP地址(不能写127.0.0.1),端口为必填项
listen.allowed_clients = 172.16.254.147==> 此处填写被代理的httpd服务的主机的IP地址
<4.启动php-fpm代理服务
~]# systemctl restart php-fpm
3、mysqsl-server主机:
<1. 修改主配置文件
~]# vim /etc/my.cnf
修改默认database目录:
datadir=/database/data
增加条目:
skip_name_resolve=ON
innodb_file_per_table=ON
<2. 启动服务:
~]# systemctl start mariadb
<3. 进入mysql客户端,建立用户、数据库、以及表和字段
【notes】此步骤非必须,可以在浏览器上按照wordpress程序的安装向导设置亦可。
~]# mysql
mysql> SELECT user,host,password FROM mysql.user;
mysql> CREATE DATABASE wpdb;
mysql> GRANT ALL ON wpdb.* TO 'wpuser'@'%' IDENTIFIED BY 'wppasswd';
mysql> use wpdb
mysql> CREATE TABLE IF NOT EXISTS wptbl(serial INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,name VARCHAR(65) NOT NULL UNIQUE KEY);
mysql> DESC wptbl;
mysql> exit
验证实验结果:打开浏览器,依次访问以下站点请求对应资源
www3.achudk.com
www3.achudk.com/index.php
www3.achudk.com/wordpress
www4.achudk.com
www4.achudk.com/index.php
拓扑结构及主机说明:
主机名 IPSERVER_NAME XXX.rpm
A 172.16.254.147httpd-server httpd-2.4
B 172.16.7.1php-fpm-server php php-fpmphp php-mysqlphp-mbstring php-mcryptphp-xcache
C 172.16.7.2mysql-server mariadb php-mysql
准备工作:
<1.软件安装全部使用yum
<2.关闭所有主机的iptables和selinux,防止影响实验顺利进行,执行如下命令:
~]# iptables -F && iptables -X && systemctl stop firewalld && setenforce 0
各主机配置如下:
1、httpd-server主机:
<1. 配置httpd配置文件
【注意】CentOS7下,无需修改httpd的主配置文件,因为CentOS7中,当虚拟主机存在时会默认禁用httpd主机的配置文件(CentOS6下需要禁用掉httpd主机,才可以启用虚拟主机功能,方式是注释掉httpd主配置文件的DocumentRoot一行),所以可以直接进入/etc/httpd/conf.d/目录下新建并编辑虚拟主机配置文件即可
~]# vim /etc/httpd/conf.d/virutalhost1.conf
DirectoryIndex index.php
KeepAlive On
KeepAliveTimeout 15
MaxKeepAliveRequests 100
<VirtualHost *:80>
DocumentRoot "/web/httpd/html/www3.achudk.com"
ServerName www3.achudk.com
ProxyRequests Off
ProxyPassMatch ^/(.*\.php)$ fcgi://172.16.7.1:9000/apache-resourse/html/$1
ErrorLog "/web/httpd/log/vh1/error_log"
CustomLog "/web/httpd/log/vh1/access_log" combined
<Directory "/web/httpd/html/www3.achudk.com">
Options FollowSymLinks
AllowOverRide None
Require all granted
</Directory>
</VirtualHost>
<2. 创建httpd访问文档目录
~]# mkdir /web/httpd/www3.achudk.com -pv && mkdir /web/httpd/www4.achudk.com
<3. 在DocumentRoot目录下创建资源(静态或动态)
]# echo "welctom to www3.achudk.com" > index.html
]# echo > index.php
也可以把wordpress程序整个目录放置在此处
~]# cd /web/httpd/www3.achudk.com/ && unzip wordpress-4.7.4-zh_CN.zip
]# cp -R wordpress/ ../www4.achudk.com/
【notes】因为在httpd虚拟主机配置文件中,是根据客户端请求的资源的文件名后缀是否为" .php " 而决定是否使用php-fpm代理的,与后缀为" .php "的文件的内容无关,所以无需修改wordpress文件中的配置文件,index.php文件中也无需有内容,只需在php-fpm代理服务器端处在对应的文件中指定内容即可。
<4. 检查配置文件语法,无误后启动服务
~]# httpd -t
~]# systemctl start httpd
2、php-fpm-server主机:
<1.创建动态php资源存储目录并创建相应的动态资源文件
]# mkdir -pv /apache-resourse/html
]# vim /apache-resoutse/html/index.php
<?php
phpinfo();
?>
<2.安装wordpress程序文件至此目录并设定其配置文件
]# unzip wordpress-4.7.4-zh_CN.zip && cd wordpress
]# cp wp-config-sample.php wp-config.php
]# vim wp-config.php
// ** MySQL 设置 - 具体信息来自您正在使用的主机 ** //
/** WordPress数据库的名称 */
define('DB_NAME', 'wpdb');
/** MySQL数据库用户名 */
define('DB_USER', 'wpuser');
/** MySQL数据库密码 */
define('DB_PASSWORD', 'wppasswd');
/** MySQL主机 */
define('DB_HOST', '172.16.7.2');==> 必填项
*** <3.设置代理配置文件
]# vim /etc/php-fpm.d/www.conf
[www]
listen = 172.16.7.2:9000==> 此处填写本主机的IP地址(不能写127.0.0.1),端口为必填项
listen.allowed_clients = 172.16.254.147==> 此处填写被代理的httpd服务的主机的IP地址
<4.启动php-fpm代理服务
~]# systemctl restart php-fpm
3、mysqsl-server主机:
<1. 修改主配置文件
~]# vim /etc/my.cnf
修改默认database目录:
datadir=/database/data
增加条目:
skip_name_resolve=ON
innodb_file_per_table=ON
<2. 启动服务:
~]# systemctl start mariadb
<3. 进入mysql客户端,建立用户、数据库、以及表和字段
【notes】此步骤非必须,可以在浏览器上按照wordpress程序的安装向导设置亦可。
~]# mysql
mysql> SELECT user,host,password FROM mysql.user;
mysql> CREATE DATABASE wpdb;
mysql> GRANT ALL ON wpdb.* TO 'wpuser'@'%' IDENTIFIED BY 'wppasswd';
mysql> use wpdb
mysql> CREATE TABLE IF NOT EXISTS wptbl(serial INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY,name VARCHAR(65) NOT NULL UNIQUE KEY);
mysql> DESC wptbl;
mysql> exit
验证实验结果:打开浏览器,依次访问以下站点请求对应资源
www3.achudk.com
www3.achudk.com/index.php
www3.achudk.com/wordpress
www4.achudk.com
www4.achudk.com/index.php
www4.achudk.com/wordpress
实验后思考:
在此基础上,可以建立独立的数据存储服务器,将所有资源(静态或动态资源)等数据全部通过nfs服务提供,可在一定程度上实现数据空间资源复用,减少存储空间资源浪费。
阅读全文
0 0
- LAMP服务搭建详解
- 树莓派上搭建LAMP服务
- lamp服务搭建
- 图文详解linux如何搭建lamp服务环境
- 图文详解linux如何搭建lamp服务环境
- 在树莓派上搭建LAMP服务
- Linux下LAMP服务搭建
- 在树莓派上搭建LAMP服务
- php---3 LAMP服务的搭建
- CentOS7--如何搭建LAMP服务环境?
- LAMP环境搭建详解(问题解决方法)
- Linux下搭建LAMP环境详解
- php开发lamp环境搭建详解
- ftp服务搭建详解
- 搬瓦工搭建服务器,lamp环境,ftp服务
- 树莓派(Raspberry Pi)搭建简单的lamp服务
- lamp搭建
- LAMP搭建
- what the GMV?
- Android中自定义圆形图片(一)
- 【算法题】合唱团
- HBuilder的热更新
- CheckBox和Button之间选择的联动效果
- LAMP服务搭建详解
- 八爪鱼
- bootstrap-validator 验证一个标签同时验证另一个指定标签
- nodejs第一站
- salesforce自定义按钮使用js与后台交互demo/自定义按钮跳转至指定URL
- mysql升级
- Lua> io.write(“\27[2J”)
- 学生信息管理系统源代码和视频文件,视频教程!
- Android通信详解