澳门新浦京娱乐场网站-www.146.net-新浦京娱乐场官网
做最好的网站

CentOS7下安装配备LAMP景况

  此次实验准备3台CentOS7服务器,版本号:CentOS Linux release 7.2.1511。

(1)配置概要:
  1、 172.18.17.7主机运行httpd php服务(php为模块工作模式)
  配置两台虚拟主机:wordpress个人博客系统、PHPmyadmin远程控制mysql

刚接触了LAMP(Linux Apache Mysql Perl/PHP/Python),想在LAMP上搭个wordpress玩玩,下面是一些笔记

言:
LAMP为网站搭建的很基本的一个架构,如果仅仅只是静态的网页文件,我们就可以通过基本的web服务器来处理。当我们需要处理动态内容时,比如把用户数据放在数据库,从数据库取出数据等等,我们就必须借助CGI连接到处理动态请求的应用。FastCGI作为一个常驻型的CGI,可以独立于apache服务,可以实现分布式的部署。接下来我们用一台 主机来搭建phpMyAdmin和WordPress,并且让wordpress实现https。

图片 1

  2、172.18.17.8主机运行mariadb服务(mysql)

搭建环境

CentOS

正文:
部署之前我们先简单介绍下我们用到的架构,不用多说LAMP就是我们熟悉的linux系统,apache,mysql(maridb)和php,本次部署过程中我们用到的数据库是maridb,基本上和mysql没多大区别。当我们的web服务器收到一个请求时,如果请求的是静态资源,服务器就返回静态资源,如果请求的是动态资源,服务器本身并不能处理,需要发到可以处理动态请求的程序上。CGI就是http服务器与其他程序交谈的接口。

搭建Apache服务器

  • 通过 yum -y install httpd 安装Apache:

图片 2

  • 访问正常:

图片 3

  • 修改配置文件,添加2个虚拟主机,一个提供phpMyAdmin,一个提供wordpress:

    [root@happiness ~]# vim /etc/httpd/conf/httpd.conf #启用解析,加速httpd服务的启动

    ServerName localhost:80
    

    #注销默认主目录

    #DocumentRoot "/var/www/html"
    

    [root@happiness ~]# vim /etc/httpd/conf.d/vhost.conf #默认主页

    DirectoryIndex index.php
    

    #虚拟主机a,后期提供phpMyAdmin

    <VirtualHost 192.168.4.119:80>
        ServerName www.aaa.net
        DocumentRoot /var/www/aaa
        ProxyRequests off 
        ProxyPassMatch ^/(.*.php)$ fcgi://192.168.4.118:9000/var/www/php_aaa/$1
        <Directory "/var/www/aaa">
            Options None
            Allowoverride None
            Require all granted
        </Directory>
    </VirtualHost>
    

    #虚拟主机b,后期提供wordpress

    <VirtualHost 192.168.4.119:80>
        ServerName www.bbb.net
        DocumentRoot /var/www/bbb
        ProxyRequests off 
        ProxyPassMatch ^/(.*.php)$ fcgi://192.168.4.118:9000/var/www/php_bbb/$1
        <Directory "/var/www/bbb">
            Options None
            Allowoverride None
            Require all granted
        </Directory>
    </VirtualHost>
    
  • 测试2个虚拟主机静态资源是否可用:

    #在虚拟主机a中新建测试页aaa.html [root@happiness ~]# vim /var/www/aaa/aaa.html

    <h1>test virtualhost aaa</h1>
    

    #在虚拟主机b中新建测试页bbb.html [root@happiness ~]# vim /var/www/bbb/bbb.html

    <h1>test virtualhost bbb</h1>
    

    访问结果:(实验中没搭建dns服务,修改要访问Apache的主机的hosts文件,添加 192.168.4.119  www.aaa.net 和 192.168.4.119  www.bbb.net,来完成访问)

图片 4   图片 5

(2)配置流程:
  首先配置172.18.17.7主机:http服务           
  1、安装程序:
[root@johnson's linux ~]# yum install httpd php php-mysql php-mbstring

所需软件

  1. httpd
  2. mysql
  3. mysql-server
  4. php
  5. php-devel
  6. php-mysql
  7. phpMyAdmin图片 6

上面的前6项,yum一下就有了,都是默认安装。而phpMyAdmin提供了链接,手动安装。

首先,安装必要的程序,
 
yum install httpd php php-mysql php-fpm mariadb-server mariadb php-mbstring

搭建php服务器

  •  通过 yum -y install php-fpm php-mysql php-mbstring 搭建php:

图片 7

  • 修改php配置文件:

    [root@happiness ~]# vim /etc/php-fpm.d/www.conf #监听本地能与外部通信的地址

    listen = 192.168.4.118:9000
    

    #允许哪些主机访问

    listen.allowed_clients = 192.168.4.119
    

    #确保user、group跟Apache服务器httpd进程的user、group一致

    user = apache
    group = apache
    

    #session目录不存在,需要手动创建

    php_value[session.save_path] = /var/lib/php/session
    

    [root@happiness ~]# mkdir /var/lib/php/session [root@happiness ~]# chown apache:apache /var/lib/php/session [root@happiness ~]# ll -hd /var/lib/php/session/

    drwxr-xr-x. 2 apache apache 4.0K Jun 21 10:28 /var/lib/php/session/
    

    #虚拟机a新建php测试页 [root@happiness ~]# cat /var/www/php_aaa/index.php

    <h1>a</h1>
    <?php
            phpinfo();
    ?>
    

    #虚拟机b新建php测试页 [root@happiness ~]# cat /var/www/php_bbb/testbbb.php

    <h1>b</h1>
    <?php
        phpinfo();
    ?>
    

    访问结果:(注意,如果访问结果出现:File not found类似的提示时,需要关闭php服务器的selinux,临时关闭通过命令 setenforce Permissive 进行,永久关闭修改配置文件 vim /etc/sysconfig/selinux)

图片 8  图片 9

 

 Package              Arch            Version                     

Apache的基本配置

  1. /etc/httpd/conf/httpd.conf 是apache的主要配置文件,修改基本的参数就OK,这里对于IP就是localhost了。
  2. //www/html 是CentOS默认的“首页”所在目录,输入"
  3. 其余的Apache配置在这里不需要,所以不详细介绍。
  4. Apache的启动 /etc/init.d/httpd start,关闭/etc/init.d/httpd stop。测试 netstat -tunl | grep ‘:80’

其中php-mysql是php连接mysql的,php-fpm就是fastcgi。然后我们就启动这些服务。

 搭建Mariadb服务器

  • 通过 yum -y install mariadb-server 安装mariadb:

图片 10

  • 创建mariadb用户访问权限:

    MariaDB [(none)]> CREATE USER 'wpuser'@'192.168.4.118' IDENTIFIED BY 'wppasswd'; MariaDB [(none)]> GRANT ALL PRIVILEGES ON wordpressdb. TO 'wpuser'@'192.168.4.118'; MariaDB [(none)]> CREATE USER 'pmauser'@'192.168.4.118' IDENTIFIED BY 'pmapasswd'; MariaDB [(none)]> GRANT ALL PRIVILEGES ON pmadb. TO 'pmauser'@'192.168.4.118'; MariaDB [(none)]> FULSH PRIVILEGES; MariaDB [(none)]> CREATE DATABASE wordpressdb DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci; MariaDB [(none)]> CREATE DATABASE pmadb DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

  • 分别在虚拟机a和b中建立测试页,看能否成功连接mariadb服务器:

    [root@happiness ~]# cat /var/www/php_aaa/mysql_conn.php

    <h1>aaa</h1>
    <?php
        $conn = mysql_connect('192.168.4.117','pmauser','pmapasswd');
        if($conn)
            echo "aaa connects successfully";
        else
            echo "aaa fails to connect.";
    ?>
    

    [root@happiness ~]# cat /var/www/php_bbb/mysql_conn.php

    <h1>bbb</h1>
    <?php
        $conn = mysql_connect('192.168.4.117','wpuser','wppasswd');
        if($conn)
            echo "bbb connects successfully.";
        else
            echo "bbb fails to connect.";
    ?>
    

    访问结果:

Repository    Size

Installing:
 httpd                x86_64          2.4.6-40.el7.CentOS          base          2.7 M
 php                  x86_64          5.4.16-36.el7_1              base          1.4 M
 php-mbstring          x86_64          5.4.16-36.el7_1              base          503 k
 php-mysql            x86_64          5.4.16-36.el7_1              base          99 k  

php测试

可以在 /var/www/html/ 下面写入php文件,这里写一个测试文件

$ vim /etc/www/html/phpinfo.php

<?php phpinfo(); ?>

然后在浏览器输入 若显示出基本信息则代表OK。

systemctl start httpd
systemctl start mariadb
systemctl start php-fpm

搭建phpMyAdmin和WordPress

  • 分别从官网下载 phpMyAdmin 和 WordPress 源码包,分别解压于对应的虚拟机主目录下:(此时最新的 phpMyAdmin-4.8.1版本仅支持 PHP 5.5 to 7.2 and MySQL 5.5,而实验中PHP版本为5.4,故下载了 phpMyAdmin-4.4.15.10版本)

图片 11

  • 搭建phpMyAdmin:

    #修改phpMyAdmin配置文件 [root@happiness ~]# vim /var/www/php_aaa/phpmyadmin/libraries/config.default.php #可通过 openssl rand -base64 32 随机字符串   $cfg['blowfish_secret'] = 'w14hLCZeyOtg4 9izK9O3oW8BLjTpJVAzF1GCAtJ7U4=';   $cfg['Servers'][$i]['host'] = '192.168.4.117';   $cfg['Servers'][$i]['user'] = 'pmauser';   $cfg['Servers'][$i]['password'] = 'pmapasswd';

    #修改完配置后复制一整份 phpmyadmin文件到Apache服务器 [root@happiness ~]# scp -r /var/www/php_aaa/phpmyadmin/ root@192.168.4.119:/var/www/aaa/

    访问结果:

  •  搭建WordPress:

    #修改WordPress配置文件 [root@happiness ~]# cp /var/www/php_bbb/wordpress/wp-config-sample.php /var/www/php_bbb/wordpress/wp-config.php [root@happiness ~]# vim /var/www/php_bbb/wordpress/wp-config.php   define('DB_NAME', 'wordpressdb');   define('DB_USER', 'wpuser');   define('DB_PASSWORD', 'wppasswd');   define('DB_HOST', '192.168.4.117');

    #修改完配置后复制一整份wordpress到Apache服务器: [root@happiness ~]# scp -r /var/www/php_bbb/wordpress root@192.168.4.119:/var/www/bbb/

    访问结果:

Transaction Summary

httpd:提供web服务
php:安装后自动编译为httpd的模块,用于处理动态资源php脚本
php-mbstring:此程序包为phpMyAdmin远程控制mysql所必须的
php-mysql:php驱动mysql的库文件程序包

2、服务配置

包都安装完成之后,进入下一步的配置阶段:

(1)添加虚拟主机:(基于FQDN)
  虚拟主机有三种配置方式:一种是基于不同ip,相同端口(80),二是相同IP不同端口,三是同一IP不同主机名(FQDN),不管何种配置方式,最后解析到的主机只有一台,但是在请求报文首部信息会有不同!以下,仅演示基于FQDN的配置方式

    编辑:/etc/httpd/conf.d/vhost.conf文件
[root@johnson's linux ~]# vim /etc/httpd/conf.d/vhost.conf 
# 添加如下内容,基于FQDN的虚拟主机配置
<VirtualHost 172.18.17.7:80>  # 固定语法 <VirtualHost ip:port>可忽略大小写
    ServerName  # 很重要,基于FQDN的虚拟主机必须要有主机名 
    DocumentRoot "/www/host/htdoc" # 虚拟主机根目录,可指定路径 
<Directory "/www/host/htdoc">  # 对虚拟主机根目录的权限设置
    Options FollowSymLinks    # FollowSymLinks  表示可以访问符号连接资源
    require all Granted    # 目录的权限设置
</Directory>               
</VirtualHost>
 
<VirtualHost 172.18.17.7:80>
    ServerName www.myadmin.com
    DocumentRoot "/www/host2/htdoc"
<Directory "/www/host2/htdoc">
    Options FollowSymLinks
    require all Granted
</Directory>
</VirtualHost>

Options:为个目录的选项,可以指定多个特性
    如:Index,启动资源索引,其作用是在用户在访问指定的URL不存在时,返回web资源索引,此选项
非常危险,不建议启用,否则源码则会web源码暴露,后果很严重

访问权限设定:
Require all Granted/deny, Granted表示允许,all表示所有,deny表示拒绝
    需要注意的是:CentOS7是默认拒绝所有主机访问DocumentRoot的资源,所以,配置虚拟主机必须要配置此先参数

(2)为虚拟主机创建配置文件中定义的资源目录并
[root@johnson's linux ~]# mkdir/www/{host,host2}/htdoc

(3)添加测试资源
[root@johnson's linux ~]# vim /www/host/htdoc/index.php
# 前面这段是测试php与mysql连通性的PHP代码
<?php
    $conn = mysql_connect('172.18.17.8','admin','admin'); # ip填写mysql主机ip
    if ($conn)                                          # 用户为mysql所授权的用户,密码空
        echo "DATABASE Connet OK";
    else
        echo "DATABASE Connet Failure";
?>
# 测试php是否正常工作的php代码
<?php
    phpinfo() #此函数调用会显示php的详细信息
?>

(4)配置httpd主配置文件
编辑:/etc/httpd/conf/httpd.conf
[root@johnson's linux ~]# vim /etc/httpd/conf/httpd.conf
# 找到 DocumentRoot "/var/www/html" ,#将其注释掉,一般使用虚拟机都要注释掉,避免冲突
#DocumentRoot "/var/www/html"
 
# 添加php主页索引
DirectoryIndex index.php index.html # 将index.php添加在前头,这样就会默认访问此类资源索引
 
# 取消服务器名称注释

(5)启动服务,测试是否正常
# 检测配置文件语法有没有错误
[root@johnson's linux ~]# httpd -t
# 语法无误启动服务
[root@johnson's linux ~]# systemctl start httpd.service

打开网页查看服务是否正常   

图片 12   

http服务测试正常,php模块也能正常工作,但是,如你所见,mysql的连接是失败,因为我们还mysql的服务器还没有配置

下面关于LAMP相关的内容你可能也喜欢

LAMP平台安装Xcache和Memcached加速网站运行  http://www.linuxidc.com/Linux/2015-06/118835.htm 

CentOS 7下搭建LAMP平台环境  http://www.linuxidc.com/Linux/2015-06/118818.htm

CentOS 6.5系统安装配置LAMP(Apache PHP5 MySQL)服务器环境 http://www.linuxidc.com/Linux/2014-12/111030.htm

Ubuntu 14.04 配置 LAMP phpMyAdmin PHP(5.5.9)开发环境  http://www.linuxidc.com/Linux/2014-10/107924.htm

Ubuntu 14.10 下安装 LAMP 服务图文详解  http://www.linuxidc.com/Linux/2014-12/110082.htm

LAMP结合NFS构建小型博客站点  http://www.linuxidc.com/Linux/2015-08/121029.htm

(5)获取wordpress和phpmyadmin
博主的是在局域网中ftp服务器中下载的
wordpress配置:

# 下载并解压至/www/host/htdoc
# cd 到wordpress目录 ,配置文件如下
[root@johnson's linux wordpress]# ls
index.php        wp-blog-header.php    wp-cron.php        wp-mail.php
license.txt      wp-comments-post.php  wp-includes        wp-settings.php
readme.html      wp-links-opml.php    wp-signup.php
wp-activate.php  wp-config-sample.php  wp-load.php        wp-trackback.php
wp-admin        wp-content            wp-login.php      xmlrpc.php
 
# 复制配置文件以上的 wp-config-sample.php 为 wp-config.php
[root@johnson's linux wordpress]# cp wp-config-sample.php  wp-config.php
 
# 编辑配置文件
[root@johnson's linux wordpress]# vim wp-config.php
// ** MySQL 设置 - 具体信息来自您正在使用的主机 ** //
/** WordPress数据库的名称 */
define('DB_NAME', 'wpdb');  # 此填写mysql所要授权数据库的名字(后面会配置)
 
/** MySQL数据库用户名 */
 
define('DB_USER', 'wpuser'); # 填写数据库的用户名
 
/** MySQL数据库密码 */
define('DB_PASSWORD', 'wppasswd'); # 填写数据的密码
 
/** MySQL主机 */
define('DB_HOST', '172.18.17.8'); # 填写mysql主机的ip
 
/** 创建数据表时默认的文字编码 */
define('DB_CHARSET', 'utf8');
 
/** 数据库整理类型。如不确定请勿更改 */
define('DB_COLLATE', '');

 

phpmyadmin配置:
1234567891011121314151617181920212223242526272829303132 # 将包下载并解压至/www/host2/htdoc
# cd 到 文件目录
# 创建符号连接
[root@johnson's linux htdoc]# ln -s phpMyAdmin-4.4.14.1-all-languages myadmin
[root@johnson's linux htdoc]# ls
index.php  phpMyAdmin-4.4.14.1-all-languages 
myadmin    phpMyAdmin-4.4.14.1-all-languages.zip 
 
#cd 至myadmin 目录里面,修改配置文件
[root@johnson's linux htdoc]# cp config.sample.inc.php config.inc.php
 
#编辑配置文件
[root@johnson's linux htdoc]# vim config.inc.php
$cfg['blowfish_secret'] = 'o71mI9rimj6syc00fT3g'; /* YOU MUST FILL IN THIS FOR COOKIE AUTH! */
                #单引号填写随机密码,可使用openssl rand -base64 15(密码长度)生成
                         
/*
 * Servers configuration
 */
$i = 0;
 
/*
 * First server
 */
$i ;
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
/* Server parameters */
$cfg['Servers'][$i]['host'] = '172.18.17.8';  # 数据库主机ip 
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['AllowNoPassword'] = false;

 

 


172.18.17.8主机配置:mysql服务

(1)yum安装程序
1234567891011121314151617 [root@johnson's linux ~]# yum install mariadb-server

Mysql的启动和测试

  1. Mysql的启动:/etc/init.dmysqld start
  2. 测试:netstat -tunl | grep ':3306'
  3. 手动连接mysql : mysql -u root
  4. 设置root密码登入: mysqladmin -u root password 'password'
  5. 登入:mysql -u root -p
  6. 登入到mysql后,通过create database wordpress ; (注意加分号)创建一个数据库
  7. show databases ;查看数据库
  8. exit 退出

然后我们得下载MyAdmin和WordPress,解压后放到/var/www/html目录下,并分别重命名为vhost1和vhost2

 借助php-xcache加速访问

  •  没安装php-xcache进行的压力测试:

    [root@happiness ~]# ab -n 10000 -c 1000 This is ApacheBench, Version 2.3 <$Revision: 1430300 $> Copyright 1996 Adam Twiss, Zeus Technology Ltd, Licensed to The Apache Software Foundation,

    Benchmarking www.bbb.net (be patient) Completed 1000 requests Completed 2000 requests Completed 3000 requests Completed 4000 requests Completed 5000 requests Completed 6000 requests Completed 7000 requests Completed 8000 requests Completed 9000 requests Completed 10000 requests Finished 10000 requests

Server Software:        Apache/2.4.6
Server Hostname:        www.bbb.net
Server Port:            80

Document Path:          /wordpress
Document Length:        237 bytes

Concurrency Level:      1000
Time taken for tests:   12.966 seconds
Complete requests:      10000
Failed requests:        0
Write errors:           0
Non-2xx responses:      10000
Total transferred:      4650000 bytes
HTML transferred:       2370000 bytes
Requests per second:    771.26 [#/sec] (mean)
Time per request:       1296.588 [ms] (mean)
Time per request:       1.297 [ms] (mean, across all concurrent requests)
Transfer rate:          350.23 [Kbytes/sec] received

Connection Times (ms)
              min  mean[ /-sd] median   max
Connect:        0   47 206.0      0    1004
Processing:     5  136 1056.6     14   12899
Waiting:        1  136 1056.6     14   12899
Total:         10  183 1085.0     15   12947

Percentage of the requests served within a certain time (ms)
  50%     15
  66%     15
  75%     16
  80%     17
  90%     25
  95%   1208
  98%   1676
  99%   1679
 100%  12947 (longest request)
  • 在php服务器上通过 yum -y install php-cache 安装cache:

图片 13

  • systemctl reload php-fpm.service,并进行压力测试,可以看到访问速度有了很大提升:

    [root@happiness ~]# ab -n 10000 -c 1000 This is ApacheBench, Version 2.3 <$Revision: 1430300 $> Copyright 1996 Adam Twiss, Zeus Technology Ltd, Licensed to The Apache Software Foundation,

    Benchmarking www.bbb.net (be patient) Completed 1000 requests Completed 2000 requests Completed 3000 requests Completed 4000 requests Completed 5000 requests Completed 6000 requests Completed 7000 requests Completed 8000 requests Completed 9000 requests Completed 10000 requests Finished 10000 requests

Server Software:        Apache/2.4.6
Server Hostname:        www.bbb.net
Server Port:            80

Document Path:          /wordpress
Document Length:        237 bytes

Concurrency Level:      1000
Time taken for tests:   1.973 seconds
Complete requests:      10000
Failed requests:        0
Write errors:           0
Non-2xx responses:      10000
Total transferred:      4650000 bytes
HTML transferred:       2370000 bytes
Requests per second:    5068.89 [#/sec] (mean)
Time per request:       197.282 [ms] (mean)
Time per request:       0.197 [ms] (mean, across all concurrent requests)
Transfer rate:          2301.79 [Kbytes/sec] received

Connection Times (ms)
              min  mean[ /-sd] median   max
Connect:        0   56 220.6      4    1011
Processing:     5   39  90.4     13    1102
Waiting:        1   36  90.5     10    1101
Total:         10   95 245.2     16    1222

Percentage of the requests served within a certain time (ms)
  50%     16
  66%     17
  75%     19
  80%     20
  90%    220
  95%   1019
  98%   1029
  99%   1213
 100%   1222 (longest request)
  • 修改xcache配置文件,修改缓存大小为100M,再进行压力测试,可以看到访问速度略有提高:

    [root@happiness ~]# vim /etc/php.d/xcache.ini

    xcache.size  =  100M
    

    [root@happiness ~]# ab -n 10000 -c 1000 This is ApacheBench, Version 2.3 <$Revision: 1430300 $> Copyright 1996 Adam Twiss, Zeus Technology Ltd, Licensed to The Apache Software Foundation,

    Benchmarking www.bbb.net (be patient) Completed 1000 requests Completed 2000 requests Completed 3000 requests Completed 4000 requests Completed 5000 requests Completed 6000 requests Completed 7000 requests Completed 8000 requests Completed 9000 requests Completed 10000 requests Finished 10000 requests

Server Software:        Apache/2.4.6
Server Hostname:        www.bbb.net
Server Port:            80

Document Path:          /wordpress
Document Length:        237 bytes

Concurrency Level:      1000
Time taken for tests:   1.642 seconds
Complete requests:      10000
Failed requests:        0
Write errors:           0
Non-2xx responses:      10000
Total transferred:      4650000 bytes
HTML transferred:       2370000 bytes
Requests per second:    6088.82 [#/sec] (mean)
Time per request:       164.235 [ms] (mean)
Time per request:       0.164 [ms] (mean, across all concurrent requests)
Transfer rate:          2764.94 [Kbytes/sec] received

Connection Times (ms)
              min  mean[ /-sd] median   max
Connect:        0   57 226.4      3    1011
Processing:     6   49 171.5     11    1613
Waiting:        1   47 171.7      8    1612
Total:          8  106 310.0     14    1636

Percentage of the requests served within a certain time (ms)
  50%     14
  66%     16
  75%     22
  80%     23
  90%    219
  95%   1028
  98%   1409
  99%   1418
 100%   1636 (longest request)

 

 

Installing:
 mariadb-server              x86_64      1:5.5.44-2.el7.centos        base      11 M
Installing for dependencies:
 mariadb                      x86_64      1:5.5.44-2.el7.centos        base      8.9 M
 perl-Compress-Raw-Bzip2      x86_64      2.061-3.el7                  base      32 k
 perl-Compress-Raw-Zlib      x86_64      1:2.061-4.el7                base      57 k
 perl-DBD-MySQL              x86_64      4.023-5.el7                  base      140 k
 perl-DBI                    x86_64      1.627-4.el7                  base      802 k
 perl-IO-Compress            noarch      2.061-2.el7                  base      260 k
 perl-Net-Daemon              noarch      0.48-5.el7                    base      51 k
 perl-PlRPC                  noarch      0.2020-14.el7                base      36 k  

安装wordpress

  1. 解压woordpress.tar.bz2到 /var/www/html/目录下
  2. cp wp-config-sample.php  wp-config.php  备份配置文件
  3. # vi wp-config.php  #编辑配置文件,输入数据库名、用户名以及密码
    // * MySQL设置 - 具体信息来自您正在使用的主机 ** //
    /** WordPress数据库的名称,替换掉 “putyourdbnamehere” */
    define('DB_NAME', 'wordpress');
    /** MySQL数据库用户名,替换掉 “usernamehere” */
    define('DB_USER', 'root');
    CentOS7下安装配备LAMP景况。/** MySQL数据库密码,替换掉 “yourpasswordhere” */*
    define('DB_PASSWORD', 'password');

mv /var/www/html/{MyAdmin*,vhost1} 
mv /var/www/html/{WordPress*,vhost2}

Transaction Summary

一大推依赖包,只要有yum在且yum源配置没有问题,可以轻松解决

 

(2)启动服务,执行安全安装操作
12345678910111213141516171819202122232425262728293031323334353637383940414243444546 [root@johnson's linux ~]# systemctl start mariadb
# 查看监听端口,3306为mariaDB的默认监听端口
[root@johnson's linux ~]# ss -tnl
State      Recv-Q Send-Q Local Address:Port              Peer Address:Port             
LISTEN    0      50              *:3306                        *:*                 
LISTEN    0      128              *:22                          *:*                 
LISTEN    0      128            :::22                          :::*   
 
执行安全安装操作 
[root@johnson's linux ~]# mysql_secure_installation 
 
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
 
Set root password? [Y/n] y  # 设置管理员登陆秘密(此密码和linux系统的root没关系)
 
New password: 
Re-enter new password:    # 输入密码即可
Password updated successfully!
Reloading privilege tables..
 ... Success!
 
Remove anonymous users? [Y/n] y  # 是否移除匿名用户(在执行安全安装之前不需要密码登陆)
 ... Success!                    # 允许匿名登陆时很危险的,建议移除
 
Disallow root login remotely? [Y/n] n  # 是否不允许管理员账号远程登陆,一般情况下建议不允许
 ... skipping.                       
 
Remove test database and access to it? [Y/n] y # 移除测试数据库
 - Dropping test database... 
 ... Success!
 - Removing privileges on test database...
 ... Success!
 
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
 
Reload privilege tables now? [Y/n] y    # 重载权限表
 ... Success!
 
Cleaning up...
 
All done!  If you've completed all of the above steps, your MariaDB
installation should now be secure.
 
Thanks for using MariaDB!

强烈建议在mariaDB安装完成后执行安全安装操作,这样可以使得数据库更安全

图片 14

安装phpmyadmin

  1. 把phpmyadmin的压缩文件解压到 /var/www/html/
  2. cd /var/www/html/phpMyAdmin/phpMyAdmin-3.4.10.1-all-languages/
    #进入到配置目录
  3. cp config.sample.inc.php config.inc.php #备份配置文件
  4. vi config.inc.php
    修改
    // $cfg['Servers'][$i]['controluser'] = 'pma';
    // $cfg['Servers'][$i]['controlpass'] = 'pmapass';

    $cfg['Servers'][$i]['controluser'] = 'root';  #mysql登录用户名
    $cfg['Servers'][$i]['controlpass'] = 'password';  #mysql登录密码
  5. 测试 :
  6. 用帐号和密码登入,在这里面可以操作你的数据库,对于wordpress,我们已经在在命令行里建立了。

接下来就可以配置wordpress了。

图片 15

一台服务器起两个web服务,所以我们就得用到虚拟主机实现,实现方法也特别简单。

    修改httpd配置文件,/etc/httpd/conf/httpd.conf找到DocumentRoot注释掉。

vim /etc/httpd/conf/httpd.conf 
#DocumentRoot "/var/www/html"

然后我们就开始建我们第一个虚拟主机vhost1了,在/etc/httpd/conf.d/目录下面,新建一个vhost.conf,以此来记录虚拟主机的相关配置。配置内容:
#/etc/httpd/conf.d/vhost.conf
 DirectoryIndex index.php
<VirtualHost *:80>
        Servername www.a.com
        DocumentRoot /var/www/html/vhost1
        ProxyRequests Off
        ProxyPassMatch ^/(.*.php) fcgi://127.0.0.1:9000/var/www/html/vhost1/$1
        <Directory "/var/www/html/vhost1">
                Options None
                AllowOverride None
                Require all  granted
        </Directory>
</VirtualHost>

  默认当我们输入网址或者ip时,可以自动识别工作目录下的index.html文件为主页,为了也能识别index.php,我们就得配置DirectoryIndex index.php。下面的就是第一个虚拟主机的配置。我们的第一个网站放在/var/www/html/vhost1下,并自动加载index.php。此时我们就可以访问我们的第一个网站了,只用输入ip或域名即可。
两个进程间通信间通信是要靠一个叫做socket的东东,就是ip和端口号,http服务的默认端口为80,当然ip地址还是很难记住的,所以我们用一个可读性更高的域名来标识一个网站。所以当我们想在一台服务器上放好几个站点时,服务器怎么来区分他们呢?
虚拟主机可以通过三种方法构架,分别是基于ip,基于端口,和基于域名。使用的最多的就是基于不同域名实现的.
 接下来,我们实现基于httpd的WordPress,一般而言,我们得自行购买证书,放在服务器上,不过既然是自己随便玩玩,也没想着上线,所以我们可以自建CA,下发证书。我们打开另一个linux系统,作为CA服务器。实现一个CA服务器也相当简单,生成一个私钥,然后通过这个私钥来生成一个自签证书。然后http服务器向CA服务器发一个证书 签名的请求,服务签名后再发给http服务器。好了,我们直接来实现把。
#CA服务器端(172.16.254.181)
cd/etc/pki/CA
(umask 077;openssl genrsa -out private/cakey.pem 2048)#生成私钥,让在private目录下
openssl req -new -x509 -key private/cakey.pem -out cacert.pem#通过上面的私钥生成自签证书
touch serial index.txt #生成计数文件
echo 01 > serial #初始话计数。
 
#http端(172.16.53.183)
cd /etc/httpd 
mkdir ssl  #在httpd的配置文件目录下,新建ssl用来存放私钥和证书
cd ssl
(umask 077;openssl genrsa -out httpd.key 1024)#建立私钥
openssl req -new -key httpd.key -out httpd.csr#建立证书签字请求文件
scp httpd.csr 172.16.253.181:/tmp#发送到CA服务器端。
 
#服务器端
openssl ca -in /tmp/httpd.csr -out certs/httpd.crt #签字,并把证书放在certs目录下,如果报错,基本上是因为你的CA服务器忘记创建index.txt 或serial里面没序号。
scp certs/httpd.crt 172.16.53.180:/etc/httpd/ssl/#把证书发送到httpd服务器端

使用基于ssl的https时,我们还得用到一个模块,所以我们先安装模块。
yum install mod_ssl

mod_ssl的配置文件为/etc/httpd/conf.d/ssl.conf,我们把虚拟主机的配置都放在/etc/httpd/conf.d/vhost.conf中,所以我们先把ssl的配置复制到vhost.conf中,并把ssl.conf保存为备份。

grep '^[^#].*' /etc/httpd/conf.d/ssl.conf >> /etc/httpd/conf.d/vhost.conf
mv /etc/httpd/conf.d/ssl.conf{,.bak}

然后修改虚拟主机的配置文件。下面只显示修改过的地方。
#/etc/httpd/conf.d/vhost.conf
<VirtualHost *:443>
DocumentRoot /var/www/html/vhost2#此虚拟主机的根目录为WordPress
ServerName www.b.com#此ServerName为我们申请证书的域名,我们的域名必须和证书的域名一致
SSLCertificateFile /etc/httpd/ssl/httpd.crt  #证书文件
SSLCertificateKeyFile /etc/httpd/ssl/httpd.key#私钥文件
ProxyRequests Off
ProxyPassMatch ^/(.*.php) fcgi://127.0.0.1:9000/var/www/html/vhost2/$1
</VirtualHost>

CentOS7下安装配备LAMP景况。作为web服务器本身的配置,到这就已经结束了。不过,我们是以不同的域名来区分不同的虚拟主机的,但怎么获取域名和ip的映射呢?最简单的方法肯定是把映射条目写到host文件中,但是博主就喜欢舍近求远。我们来建一个dns吧。

相关:http://www.linuxidc.com/Linux/2017-07/145439.htm

初始化配置WordPress

前言:
    上面主要讲到的是搭建WordPress的运行环境,本问将主要讲一下如何配置数据库,和WordPress以使此博客系统可以访问。

正文:
    首先我们得在mariadb数据库中,新建一个数据库,并且设置好帐号密码给予用户访问权限。模式情况下,是可以匿名进去连接到数据库的。用mysql命令进入数据库:

[root@localhost ~]#mysql
MariaDB [(none)]> create database WordPress;#新建一个名为wordpress的数据库
MariaDB [(none)]> grant all on WordPress.* to 'linuxidc'@'localhost' identified by '1234';#给用户linuxidc访问WordPress所有表的权限,密码为1234.
MariaDB [(none)]>quit

数据库这边我们已经设置完毕,我们输入服务器的ip或者域名访问WordPress(如果是https,就只能输入域名了),然后输入响应信息。点击提交之后,就会生成一个配置信息,我们复制配置内容,然后在WordPress网站的目录下新建一个配置文件,直接把配置内容粘贴进去即可。博主的目录是/var/www/html/vhost2/.配置文件生成之后就直接点进行安装,后面就跟着提示安装就可~就这样愉快而又快乐的,我们就拥有了自己的博客网站了。当然,如果你想让别人访问就得购买服务器或者虚拟主机,然后购买域名等等。
如果你按着上一篇同样搭建了MyAdmin,就可以直接输入数据库的帐号密码 就是上面的linuxidc 1234直接管理数据库啦~

本文永久更新链接地址:http://www.linuxidc.com/Linux/2017-07/145438.htm

图片 16

本文由澳门新浦京娱乐场网站发布于澳门新浦京娱乐场网站,转载请注明出处:CentOS7下安装配备LAMP景况