CentOS 7系统上部署Apache+PHP+MariaDB+xcache使用rpm,php module

简介:

    在进行部署之前需要确保当前的CentOS系统可以连接到任意一个repo软件仓库——如果网络通畅,直接使用默认repo仓库(最好使用本地yum仓库,速度快),如果无法连接网络使用本地repo仓库通过修改/etc/yum.repo.d/中的配置文件进行配置。

    在配置好后使用以下命令安装Apache+PHP+MariaDB:

1
  ~] # yum install httpd php php-mysql mariadb* -y

    在安装完成之后可以将其设为开机启动:

1
2
~] # systemctl start mariadb
~] # systemctl start httpd

    使用下面这条命令可以检查一个服务是否设为开机启动:

1
~] # systemctl is-enabled SERVICE.service

    到这里,基本的安装文件已经安装完成,但是从windows中使用浏览器访问此主机IP时还是不能访问,因为被防火墙阻止了,我们可以先将防火墙关闭和selinux,使用以下命令:

1
2
~] # iptables -F
~] # setenforce 0

    就可以看到以下画面(172.16.7.100是这台主机的IP):

wKioL1m3jEqz7rOkAAMjt25lMrM246.png-wh_50

    接下来开始配置两个虚拟主机,目的是当使用不同的网址访问此主机的时候能够返回不同的页面。首先添加一个配置文件到/etc/httpd/conf.d/中,文件中写入以下内容:

1
~] # vim /etc/httpd/conf.d/vhost-myweb
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<VirtualHost *:80>
         ServerName myweb.wordpress.com
         DocumentRoot  /myweb/wordpress
         ErrorLog logs /wordpress-error_log
         CustomLog logs /wordpress-access_log  combiend
         <Directory  "/myweb/wordpress" >
                 Options None
                 AllowOverride   None
                 Require all granted
         < /Directory >
< /VirtualHost >
<VirtualHost *:80>
         ServerName myweb.phpmyadmin.com
         DocumentRoot  /myweb/phpmyadmin
         ErrorLog logs /phpmyadmin-error_log
         CustomLog logs /phpmyadmin-access_log  combiend
         <Directory  "/myweb/phpmyadmin" >
                 Options None
                 AllowOverride None
                 Require all granted
         < /Directory >
< /VirtualHost >

    然后创建两个虚拟主机对应的家目录,并重新加载服务:

1
~] # mkdir -pv /myweb/{wordpress,phpmyadmin}
1
~] # systemctl reload httpd
1
2
~] # echo "<h1>wordpress</h1>"> /myweb/wordpress/index.html
~] # echo "<h1>phpmyadmin</h1>"> /myweb/phpmyadmin/index.html

    通过上面两条输出重定向命令创建测试文件分别到各自对应的目录,创建完成之后回到windows中修改hosts配置文件(此文件在C:\Windows\System32\drivers\etc\目录中的hosts文件,这个文件保存了本地的DNS记录),在其中加入这两条(如果提示不能修改,那么鼠标右键此文件,属性→安全→编辑,在下方权限那里将修改权限的勾打上):

1
2
172.16.7.100 myweb.wordpress.com
172.16.7.100 myweb.phpmyadmin.com

    配置保存之后在浏览器通过访问两个网址即可看到不同的网址:

wKioL1m3lvrzLDq2AAAkPB4I4a8657.png-wh_50

wKiom1m3lyLz_zTuAAAlWJmzcEM383.png-wh_50

    接下来删除这两个测试文件(~]# rm -frv /myweb/*),开始配置wordpress和phpmyadmin,wordpress的配置请参考上一篇博客:http://11142243.blog.51cto.com/11132243/1964468 ,在这里只进行phpmyadmin的配置。

        配置好的wordpress:

wKiom1m3ndfAwhVSAAFTLdqPOB0327.png-wh_50

    下面开始配置phpmyadmin,下载地址:https://files.phpmyadmin.net/phpMyAdmin/3.5.4/phpMyAdmin-3.5.4-all-languages.tar.gz

(在这里一定要注意版本,我因为没有注意版本,下载了一个高版本的,但是它所依赖的其他软件版本没跟上,调试了快一整天才发现这个问题 = =!)

    调试的时候将下边的语句写到要调适的php文件开头,将错误输出打开:

1
2
3
4
     <?php
     ini_set ( 'display_errors' , 'on' );
     error_reporting (E_ALL);
     ?>

    当软件下载完成之后(可以通过

1
wget -c https: //files .phpmyadmin.net /phpMyAdmin/3 .5.4 /phpMyAdmin-3 .5.4-all-languages. tar .gz

命令下载或者从windows中下载之后导入到linux系统中(使用xshell自带功能或者FileZilla软件))

    wKioL1m32lyCvMADAAAXnlIKcaM008.png-wh_50

1
2
  ~] # cd /myweb/phpmyadmin/
  phpmyadmin] # tar -zxvf ~/phpMyAdmin-3.5.4-all-languages.tar.gz -C ./

    然后将phpMyAdmin-4.7.4-all-languages/目录中的文件复制到当前目录中:

1
phpmyadmin] # mv phpMyAdmin-3.5.4-all-languages/* ./

    这样,phpMyAdmin远程管理软件即配置完成,我们可以通过远程来管理数据库中的内容:

wKioL1m321vhy9ekAACokU5-TKQ506.png-wh_50

    但是因为我们只给wordpress账户赋予了远程登陆的权限,所以在这里只能登陆账号“wordpress”(如果想要登陆root账户,只需要按照在数据库中给wordpress账户分配权限的方法给root用户分配远程登陆的权限即可)

wKioL1m33G-B5Mo4AACtkDmHLhw503.png-wh_50

wKiom1m33JfjcYInAAGf8vsKfzg111.png-wh_50

    此时网站已经部署好了,我们接下来需要对其进行测试,可以在另外一台能够连接到这台主机的主机中使用以下命令(同样需要修改hosts文件——/etc/hosts):

1
2
echo  '172.16.7.100    myweb.phpmyadmin.com myweb.wordpress.com'  >>  /etc/hosts
~] # ab -c 100 -n 1000 myweb.phpmyadmin.com/index.php

此时,我正好有一台IP为172.16.6.11的主机,ab压力测试结果如下:

wKioL1m_MbHBClGvAAC8yASVmIE575.png-wh_50wKiom1m_MeGhnkMKAAC9JQiK96Q506.png-wh_50

为了进一步提升访问速度,我们可以安装php的xcache模块:

1
] # yum install php-xcache

wKiom1m_OECiT9k7AAAkq07uUzY906.png-wh_50

安装之后使用以下命令就可以看到如下图所示的效果(没有安装的使用这个命令效果如上图)

1
~] # php -v

wKioL1m_OA_yTR4QAABrTNHJW00183.png-wh_50

安装成功之后再进行测试,发现速度提升了将近一倍

wKiom1m_MeLwRpyrAAC8XfN0Jek738.png-wh_50wKioL1m_MbHRwbzsAAC24J5Hqc8404.png-wh_50















本文转自正经的青年51CTO博客,原文链接:http://blog.51cto.com/11142243/1966271 ,如需转载请自行联系原作者




相关文章
|
25天前
|
Linux 网络安全 Apache
CentOS 7.2配置Apache服务httpd(上)
CentOS 7.2配置Apache服务httpd(上)
168 1
|
3月前
|
存储 安全 PHP
PHP中实现简单身份验证系统的步骤
【8月更文挑战第31天】在构建Web应用程序时,确保用户身份的合法性和数据的安全性是至关重要的。本文将引导你通过使用PHP语言来实现一个简单的身份验证系统,从数据库设计到前端登录界面的创建,再到后端逻辑的处理,我们将一步步地走过整个流程。无论你是PHP新手还是希望复习相关知识,这篇文章都将为你提供清晰的指导和实用的代码示例。
ly~
|
14天前
|
存储 安全 前端开发
php文件管理系统
PHP 文件管理系统是基于 PHP 开发的,用于管理文件和文件夹的应用。它支持文件上传、下载、浏览、搜索、编辑和删除,并提供权限管理和安全防护功能。适用于企业内部、网站和个人文件管理,确保文件的安全性、保密性和高效共享。
ly~
17 9
ly~
|
13天前
|
存储 自然语言处理 前端开发
有哪些常见的 PHP 文件管理系统?
elFinder:开源Web文件管理器,支持文件的基本操作及拖放管理,具备多种文件预览、权限管理功能,适用于网站后台文件管理和共享主机环境。 FileRun:多语言、易用的文件管理工具,提供强大的搜索和版本控制功能,支持外部存储集成,适用于企业内部文件共享与协作。 KCFinder:轻量级PHP文件管理器,易于集成,支持文件上传下载限制,与富文本编辑器兼容,适用于博客系统和内容编辑场景。 AjaXplorer:基于Ajax技术的文件管理系统,提供流畅体验和插件扩展,支持文件分类和共享,适用于团队协作和灵活文件分享场景。
ly~
25 1
|
25天前
|
Linux PHP Apache
CentOS 7.2配置Apache服务httpd(下)
CentOS 7.2配置Apache服务httpd(下)
45 1
|
19天前
|
前端开发 JavaScript 小程序
前端uni开发后端用PHP的圈子系统该 如何做源码?
圈子系统系统基于TP6+Uni-app框架开发;客户移动端采用uni-app开发,管理后台TH6开发。系统支持微信公众号端、微信小程序端、H5端、PC端多端账号同步,可快速打包生成APP
|
24天前
|
前端开发 JavaScript PHP
Thinkphp在线客服系统源码多语言外贸版_PHP客服系统源码Uniapp开发搭建+论文设计
Thinkphp在线客服系统源码多语言外贸版_PHP客服系统源码Uniapp开发搭建+论文设计
|
2月前
|
PHP Apache 数据库
PHP做二次开发:本机安装ThinkCMF系统
文章详细说明了如何在本地环境中从零开始安装并配置ThinkCMF系统,包括环境准备、源代码获取、虚拟域名设置及数据库配置等步骤。
|
12天前
|
SQL Java API
Apache Flink 2.0-preview released
Apache Flink 社区正积极筹备 Flink 2.0 的发布,这是自 Flink 1.0 发布以来的首个重大更新。Flink 2.0 将引入多项激动人心的功能和改进,包括存算分离状态管理、物化表、批作业自适应执行等,同时也包含了一些不兼容的变更。目前提供的预览版旨在让用户提前尝试新功能并收集反馈,但不建议在生产环境中使用。
395 13
Apache Flink 2.0-preview released
|
16天前
|
存储 缓存 算法
分布式锁服务深度解析:以Apache Flink的Checkpointing机制为例
【10月更文挑战第7天】在分布式系统中,多个进程或节点可能需要同时访问和操作共享资源。为了确保数据的一致性和系统的稳定性,我们需要一种机制来协调这些进程或节点的访问,避免并发冲突和竞态条件。分布式锁服务正是为此而生的一种解决方案。它通过在网络环境中实现锁机制,确保同一时间只有一个进程或节点能够访问和操作共享资源。
39 3