centos7 lamp(moudle)

CentOS 7, lamp (module)

要求:(1) 三者分离于两台主机;

(2) 一个虚拟主机用于提供phpMyAdmin;另一个虚拟主机用于提供wordpress;

(3) xcache

(4) 为phpMyAdmin提供https虚拟主机;

规划:  172.18.105.110 上运行http服务器以及php后端脚本

172.18.17.191 运行数据库

准备工作

我提前做好了DNS 两台A记录172.18.105.110 对应的FQDN 为www1.stu05.com  www2.stu05.com

1.在172.18.105.110上yum install httpd php  php-mysql -y 注:此时php是作为httpd的模块

在172.18.17.191 yum install mariadb.server -y  安装数据库

systemctl start httpd

扩展:2.4的http支持fastcgi,如果要使用把php替换成php-fpm

2.关闭中心主机的 #DocumentRoot "/var/www/html"

3.配置虚拟主机的根目录

mkdir -pv /web/vhosts/www1

mkdir -pv /web/vhosts/www2

4.配置基于FQDN的虚拟主机 vim /etc/httpd/conf.d/vhosts

虚拟主机一

<VirtualHost 172.18.105.110:443>

ServerName www1.stu05.com

DocumentRoot  "/web/vhosts/www1"

<Directory "/web/vhosts/www1">

AllowOverride None

Options None

Require all granted

</Directory>

</VirtualHost>

虚拟主机二

<VirtualHost 172.18.105.110:80>

ServerName www2.stu05.com

DocumentRoot  "/web/vhosts/www2"

<Directory "/web/vhosts/www2">

AllowOverride None

Options None

</VirtualHost>

检查语法httpd -t 时中间出现报错:

httpd: Could not reliably determine the server‘s fully qualified domain name, using localhost.localdomain. Set the ‘ServerName‘ directive globally to suppress this message

原因:httpd:不能可靠地确定服务器的完全限定域名,使用localhost.localdomain。设置‘ ServerName指令在全球范围内抑制此消息

解决办法:vim /etc/httpd/conf/httpd.conf   首先找到ServerName(约213行),将其设置为localhost:80

5.测试http的虚拟站点是否正常

vim /web/vhosts/www1 和 /web/vhosts/www1

vim index.html

www2站点 <b1>www2 meimei </b1>    www1站点 <b1>www1 meimei </b1>

在浏览器里输入www1.stu05.com  www2.stu05.com  ---------------此时本地dns已经指向本地

6.rpm -ql php 检查 libphp5.so 模块是否对应着httpd启用的mpm模块为prefork

注意:测试前查看php的库是否和httpd的mpm的多道处理模块是否匹配

rpm查看库 rpm -ql  php   httpd查看启用模块 vim /etc/httpd/conf.modules.d/00-mpm.conf

php库:libphp5.so      模块:LoadModule mpm_prefork_module modules/mod_mpm_prefork.so

php库:libphp5-zts.so  模块:LoadModule mpm_worker_module modules/mod_mpm_worker.so

LoadModule mpm_event_module modules/mod_mpm_event.so

7.测试httpd与php连通是否正常 vim /web/vhosts/www1 和 /web/vhosts/www1

vim index.php

php测试代码

<?php

phpinfo();

?>

浏览器  http://www1.stu05.com   http://www2.stu05.com

7.测试php与mysql-server的连接是否正常

以管理员登录mysql,并授权远程登录用户

CREATE DATABASE wpdb1;   创建数据库

(1) GRANT ALL ON wpdb1.* TO  [email protected]‘172.18.%.%‘ IDENTIFIED BY ‘wpuser1‘;

注:GRANT授权 在172.16.0.0/16网段的主机通过testuser远程访问testdb的所有表

(2) FLUSH PRIVILEGES 刷新立即生效

可查看用户:SELECT USER();

测试下远程用户是否可以登录数据库:mysql -uwpuser1 -h172.18.17.191 -pwpuser1

(3)关闭mysql登录时候用户名的反解

vim /etc/my.cnf 配置文件中[mysqld]后面加入skip_name_resolve = ON

然后重载service mysqld reload

分别放在index.php中后,运行 http://172.18.105.110

<?php

$conn = mysql_connect(‘172.16.100.67‘,‘testuser‘,‘testpass‘);

if ($conn)

echo "OK";

else

echo "Failure";

?>

    lamp环境就成功了。

总结:

任何开源程序需要连接到数据库的,在测试lamp连接数据库ok的情况下,如果是远程连接,则需要创建一个得到授权的远程连接的用户,而workdpress不仅需要创建一个数据库,还需要一个得到授权的远程连接的用户。

远程主机登录数据库 define(‘DB_HOST‘, ‘172.18.250.157‘);   本地主机登录数据库define(‘DB_HOST‘, ‘127.0.0.1‘);

本地数据库root登录如果有密码  mysql -uroot  -pxwj4611

如果本地数据库root没有密码mysql

8.第一个虚拟主机运行wordpress

cp  wordpress-4.3.1-zh_CN.zip /web/vhosts/www1/

unzip wordpress-4.3.1-zh_CN.zip

ln -sv wordpress-4.3.1-zh_CN  wordpress 然后cd /wordpress

1、cp wp-config-sample.php   wp-config.php

2、执行mysql或者如果本地root已经设定密码mysql -uroot -pxwj4611 ------CREATE DATABASE wpdb;创建数据库   大多数开源的程序会自动创建数据库

3、GRANT ALL ON wpdb.* TO [email protected]‘172.18.%.%‘ IDENTIFIED BY ‘wppress‘

注:给这个软件授权一个用户可以远程连接数据库,如果是本地连接127.0.0.1

4、vim vp-config.php 编辑配置文件

/** WordPress数据库的名称 */

define(‘DB_NAME‘, ‘wpdb1‘);

/** MySQL数据库用户名 */

define(‘DB_USER‘, ‘wpuser1‘);

/** MySQL数据库密码 */

define(‘DB_PASSWORD‘, ‘wpuser1‘);

/** MySQL主机 */

define(‘DB_HOST‘, ‘172.18.17.191‘);    如果是本地连接loaclhost 或者127.0.0.1

测试:www1.stu05.com/wordpress   压力测试 ab -n 1000 -c 100 http://www2.stu05.com/wordpress/index.php  -c模拟的并发数 -n模拟的总请求数

本地测试的没有考虑带宽,服务器可能没有跑满带宽跑满了。Requests per second:    8.85 [#/sec] (mean) 每秒钟处理的请求数

9.第二个虚拟主机运行phpMyAdmin

准备工作:  cp  phpMyAdmin-4.4.14.1-all-languages.zip /web/vhosts/www1/

unzip phpMyAdmin-4.4.14.1-all-languages.zip

ln -sv phpMyAdmin-4.4.14.1-all-languages pma   注:方便回滚

我需要事先为其连接到数据库后准备一个授权的远程链接的用户:以遍可以登录

(1)、执行mysql或者如果本地root已经设定密码mysql -uroot -pxwj4611

(2)、GRANT ALL ON wpdb.* TO [email protected]‘172.18.%.%‘ IDENTIFIED BY ‘myuser‘

为phpMyAdmin能够连接数据库修改配置文件

(1)cp config.sample.inc.php  config.inc.php

(2)openssl ran -base64 15

(3)vim   config.inc.php

$cfg[‘blowfish_secret‘] = ‘46aJFLiLxmqO0qrdGqwx‘; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */ -------随机数贴里面

$cfg[‘Servers‘][$i][‘host‘] = ‘172.18.17.191‘;     远程连接指向数据库的主机

测试:www1.stu05.com/pma

压力测试 ab -n 1000 -c 100 http://www1.stu05.com/pma/index.php   -c模拟的并发数 -n模拟的总请求数

10、编译安装xcache

# yum install php-devel

# cd  xcache-3.2.0

# phpize

# ./configure --enable-xcache  --with-php-config=/usr/bin/php-config

# make && make install

# cp  xcache.ini  /etc/php.d/

重新启动systemctl restart php-fpm

11、 为phpMyAdmin提供https虚拟主机;

<VirtualHost 172.18.105.110:443>

ServerName www1.stu05.com

DocumentRoot  "/web/vhosts/www1/myadmin"

SSLEngine on

SSLCertificateFile /etc/httpd/ssl/httpd.crt--------------指向证书的位置

SSLCertificateKeyFile /etc/httpd/ssl/httpd.key------------指向公钥的位置

<Directory "/web/vhosts/www1/myadmin">

AllowOverride None

Options FollowSymLinks-----------------------------允许访问链接文件的源文件

Require all granted

</Directory>

</VirtualHost>

测试:本地主机指向dns

浏览器 https://www1.stu05.com      http://www2.stu05.com/wordpress

时间: 2024-10-05 05:01:43

centos7 lamp(moudle)的相关文章

centos7 LAMP环境安装zabbix3.0

zabbix3.0要求的PHP.数据库.Apache/Nginx的版本参考: zabbix3.0对PHP.数据库.nginx/apache版本要求参考: https://www.zabbix.com/documentation/3.0/manual/installation/requirements 本次安装的系统环境为centos7.2,lamp.第一次安装使用的版本是centos6.6,lnmp.安装后均可正常使用. mysql版本 [[email protected] ~]# mysql 

CentOS7 lamp安装 centoOS6 lamp

快速lamp安装 How To Install Linux, Apache, MySQL, PHP (LAMP) stack On CentOS 7 Introduction A "LAMP" stack is a group of open source software that is typically installed together to enable a server to host dynamic websites and web apps. This term is

centos7 LAMP+Discuz搭建自己的论坛

一.LAMP环境搭建 文章参考https://www.linode.com/docs/web-servers/lamp/lamp-on-centos-7/ 1.apache相关操作 yum install httpd #保持好习惯,修改配置文件以前备份,以免搞坏了无法使用 cp /etc/httpd/conf/httpd.conf ~/httpd.conf.backup vim /etc/httpd/conf/httpd.conf  在最后加入 KeepAlive Off <IfModule p

centos7 lamp配置笔记

1.安装apache服务器 yum install httpd* 2.更改firewall centos7默认使用firewall而不是熟悉的iptables systemctl stop firewalld.service      systemctl disabled  firewalld.service 安装iptables yum install iptables vim /etc/sysconfig/iptables 在开启的22端口后加入以下两行 -A INPUT -m state

学习笔记 centos7 lamp 作业

vhost1: pma.stu55.com, phpMyAdmin, 同时提供https服务:vhost2: wp.stu55.com, wordpressvhost3: dz.stu55.com, Discuz 安装 httpd  php mariadb 首先启动httpd 查看进程是否启动,是否监听在80端口 http -M查看 这两个动态模块是否加载 如果加载有这两项说明 php模块已经启动 并且识别以php结尾的文件 创建 目录 先把/etc/httpd/conf/httpd.conf中

centos 快速搭建lnmp、lamp+zabbix3.2监控系统

所安装版本mysql 5.6 php5.5 zabbix3.2 centos7 lnmp+zabbix3.2 脚本 #!/bin/bash if [ $(rpm -qi mysql-community-release-el7-5.noarch | wc -l) -lt 2 ];then rpm -Uvh http://repo.mysql.com//mysql-community-release-el7-5.noarch.rpm if [ $? -ne 0  ];then echo "mysql

CentOS7 + owncloud8.1.0 &nbsp; 搭建企业私有云(基础服务)

   最近公司给了一个寻找合适的企业云盘的任务给我.我想自己搭建一个试试.选用了以下组合:CentOS7(lamp) + owncloud8.1.0  附录: 一.CentOS 7.0默认使用的是firewall作为防火墙. firewall: systemctl start firewalld.service#启动firewall systemctl stop firewalld.service#停止firewall systemctl disable firewalld.service#禁止

Linux系统入门学习:在CentOS上安装phpMyAdmin

问题:我正在CentOS上运行一个MySQL/MariaDB服务,并且我想要通过网络接口来用phpMyAdmin来管理数据库.在CentOS上安装phpMyAdmin的最佳方法是什么? phpMyAdmin是一款以PHP为基础,基于Web的MySQL/MariaDB数据库管理工具.虽然已经存在着一些诸如Adminer的轻量级数据库管理工具, 但是phpMyAdmin还是更加广泛应用于网站管理员之中来进行各种MySQL/MariaDB的管理任务.它支持几乎所有MySQL数据库/表的相关操作,比如浏

thinkphp5.x命令执行漏洞复现及环境搭建

楼主Linux环境是Centos7,LAMP怎么搭不用我废话吧,别看错了 1.安装composer yum -y install composer 安装php拓展 yum -y install php-mysql php-gd libjpeg* php-ldap php-odbc php-pear php-xml php-xmlrpc php-mbstring php-bcmath php-mhash -y 2.切换目录到/var/www/html cd /var/www/html 安装thin