说明:在一台linux主机上模拟搭建LAMP
简介:
LAMP由四个部分组成:Linux,Apache,MySQL,PHP。搭建这一套架构是为了实现动态网页环境的部署。本文将在一台centos7.3的linux主机上模拟部署LAMP环境。apche环境采用httpd应用部署,MySQL采用Mariadb应用部署,php主要采用php-fpm应用部署,辅助应用为 php-mbstring php-mcrypt php-xcache。 PHP与MySQL的接口采用php-mysql应用连接。本文模拟的后端php服务器是通过php-fpm应用实现。它是FASTCGI进程管理工具,特别适用于高并发的网站。
组成:
A:apache(Httpd)
M:MySQL(Mariadb)
P:PHP(php-fpm)
拓扑图
<a href="https://s3.51cto.com/wyfs02/M01/97/D0/wKiom1kza2aR12llAAA5oij_dII984.png" target="_blank"></a>
1.环境准备:
操作系统:window10
浏览器:chrome
虚拟机:VMware workstation11
MySQL图形界面管理工具:phpMyAdmin
实验操作系统:centos7.3
软件包准备:mariadb-server php-fpm php-mysql httpd
2.系统初始化:
<code> </code><code>关闭防火墙</code>
<code> </code><code>iptables -F </code>
<code> </code><code>关闭防火墙开始启动 </code>
<code> </code><code>systemctl disable firewalld.service</code>
<code> </code><code>关闭SElinux</code>
<code> </code><code>setenforce 0</code>
3.mariadb-server 安装与环境配置
<code> </code><code>安装mariadb-server</code>
<code> </code><code>yun </code><code>install</code> <code>mariadb-server</code>
<code> </code><code>修改mariadb服务端配置</code>
<code> </code><code>vi</code> <code>/etc/my</code><code>.cnf.d</code><code>/server</code><code>.cnf</code>
<code> </code><code>在如下行修改配置</code>
<code> </code><code># this is only for the mysqld standalone daemon</code>
<code> </code><code>[mysqld]</code>
<code> </code><code>skip_name_resolve=on </code><code>#跳过域名解析</code>
<code> </code><code>innodb_file_per_table=ON </code>
<code> </code><code>查看mariadb的3306端口是否开启</code>
<code> </code><code>ss -tln</code>
<code> </code><code>重启数据库</code>
<code> </code><code>systemctl start mariadb.service</code>
<code> </code><code>mysql测试</code>
<code> </code><code>mysql</code>
<code> </code><code>注意:我设置了mysql的密码,若没有密码,使用上述命令即可</code>
<code> </code><code>安全加固</code>
<code> </code><code>mysql_secure_installation mysql</code>
<code> </code><code>#根据自己需求做出相应更改</code>
<code> </code><code>建立一个测试用户</code>
<code> </code><code>grant all on testdb.* to </code><code>'hu'</code><code>@</code><code>'192.168.%.%'</code> <code>identified by </code><code>'123456'</code><code>;</code>
<code> </code><code>另一个终端登陆mysql</code>
<code> </code><code>ssh</code> <code>192.168.0.3 mysql -uhu -h192.168.0.3 -p123456</code>
4.php安装与环境配置
<code> </code><code>安装php相关应用</code>
<code> </code><code>yum </code><code>install</code> <code>php-fpm php-mysql php-mbstring php-mcrypt php-xcache -y</code>
<code> </code><code>进入php-fpm环境配置目录</code>
<code> </code><code>cd</code> <code>/etc/php-fpm</code><code>.d/</code>
<code> </code><code>将原文件备份</code>
<code> </code><code>cp</code> <code>www.conf{,.bak}</code>
<code> </code><code>修改配置文件</code>
<code> </code><code>vi</code> <code>/etc/php-fpm</code><code>.d</code><code>/www</code><code>.conf </code>
<code> </code><code>说明:此配置文件中注释用;(分号)标注,如要开启某些功能,取消;即可。</code>
<code> </code><code>以下是我列出一些可选项,大家可根据需要自行修改</code>
<code> </code><code>[如果要跨主机通信,修改监听地址] listen = 127.0.0.1:9000</code>
<code> </code><code>[fastcgi客户端地址] listen.allowed_clients = 127.0.0.1 </code>
<code> </code><code>[fpm内置状态页面路径] pm.status_path = </code><code>/status</code>
<code> </code><code>[测试服务器</code><code>ping</code><code>] </code><code>ping</code><code>.path = </code><code>/ping</code>
<code> </code><code>[</code><code>ping</code><code>回应] </code><code>ping</code><code>.response = pong</code>
<code> </code><code>[会话保存的路径] php_value[session.save_path] =</code><code>/var/lib/php/session</code>
<code> </code>
<code> </code><code>在这里,为了测试需要我开启如下功能</code>
<code> </code><code>pm.status_path = </code><code>/pmstatus</code>
<code> </code><code>php_value[session.save_path] = </code><code>/var/lib/php/session</code>
<code> </code><code>创建保存会话的目录</code>
<code> </code><code>mkdir</code> <code>/var/lib/php/session</code> <code>-pv</code>
<code> </code><code>修改目录属主</code>
<code> </code><code>chown</code> <code>apache:apache </code><code>/var/lib/php/session</code>
<code> </code><code>重启php-fpm,配置生效</code>
<code> </code><code>systemctl start php-fpm.service</code>
<code> </code><code>查看php端口与进程</code>
<code> </code><code>ss -tln</code>
<code> </code><code>ps</code> <code>aux | </code><code>grep</code> <code>pool</code>
<a href="https://s1.51cto.com/wyfs02/M00/97/C3/wKiom1kyir_iiwBgAAAUyhrNmiE423.png" target="_blank"></a>
<a href="https://s1.51cto.com/wyfs02/M01/97/C3/wKiom1kyitSxTGQSAAAqRVZ42xc598.png" target="_blank"></a>
5.httpd安装与环境配置
<code> </code><code>安装 httpd</code>
<code> </code><code>yum </code><code>install</code> <code>httpd</code>
<code> </code><code>查看proxy_fcgi_module是否存在</code>
<code> </code><code>httpd -M</code>
<code> </code><code>进入httpd配置目录</code>
<code> </code><code>cd</code> <code>/etc/httpd/conf</code><code>.d/</code>
<code> </code><code>虚拟主机配置</code>
<code> </code><code>vi</code> <code>huwho.conf </code>
<code> </code><code>DirectoryIndex index.php</code>
<code> </code><code><VirtualHost *:80></code>
<code> </code><code>DocumentRoot </code><code>"/web/www/html"</code>
<code> </code><code>ServerName </code><code>"www.huwho.cn"</code>
<code> </code><code>ProxyRequests Off</code>
<code> </code><code>ProxyPassMatch ^/(.*\.php)$ fcgi:</code><code>//127</code><code>.0.0.1:9000</code><code>/web/www/html/</code><code>$1</code>
<code> </code><code>ProxyPassMatch ^/(pmstatus.*)$ fcgi:</code><code>//127</code><code>.0.0.1:9000/$1</code>
<code> </code><code><Directory </code><code>"/web/www/html"</code><code>></code>
<code> </code><code>Options FollowSymLinks</code>
<code> </code><code>AllowOverride None</code>
<code> </code><code>Require all granted</code>
<code> </code><code><</code><code>/Directory</code><code>></code>
<code> </code><code><</code><code>/VirtualHost</code><code>></code>
<code> </code><code>#配置指令说明参考官方文档:http://httpd.apache.org/docs/2.4/</code>
<code> </code><code>创建web页面路径</code>
<code> </code><code>mkdir</code> <code>/web/www/html</code> <code>-pv</code>
<code> </code><code>检查语法</code>
<code> </code><code>httpd -t</code>
<code> </code><code>进入web路径目录</code>
<code> </code><code>cd</code> <code>/web/www/html/</code>
<code> </code><code>编辑php测试页面</code>
<code> </code><code>vi</code> <code>phpinfo.php</code>
<code> </code><code><?</code>
<code> </code><code>phpinfo();</code>
<code> </code><code>?></code>
<code> </code><code>修改windows10域名解析文件(hosts)</code>
<code> </code><code>路径:C:\Windows\System32\drivers\etc</code>
<code> </code><code>目的:使windows本机能够解析设定的域名</code>
<a href="https://s2.51cto.com/wyfs02/M00/97/C3/wKiom1kyi-nzYs4FAADHm1a5-tk144.png" target="_blank"></a>
<code> </code><code>重启httpd服务</code>
<code> </code><code>systemctl restart httpd.service </code>
<code> </code><code>访问页面</code>
<a href="https://s5.51cto.com/wyfs02/M01/97/C3/wKiom1kyjJGyv2PuAACgsG8ktgQ746.png" target="_blank"></a>
查看页面状态信息
<a href="https://s4.51cto.com/wyfs02/M01/97/C3/wKiom1kyjZWx1ZemAACDw5QvdQE537.png" target="_blank"></a>
6.MySQL图形界面管理工具安装
<code> </code><code>下载phpMyAdmin-4.0.10.20-all-languages.</code><code>tar</code><code>.gz</code>
<code> </code><code>下载地址https:</code><code>//www</code><code>.phpmyadmin.net/</code>
<code> </code><code>解压(推荐目录</code><code>/web/www/html</code><code>)</code>
<code> </code><code>tar</code> <code>-xf phpMyAdmin-4.0.10.20-all-languages.</code><code>tar</code><code>.gz</code>
<code> </code><code>创建软连接(因为名字太长)</code>
<code> </code><code>ln</code> <code>-sv phpMyAdmin-4.0.10.20-all-languages.</code><code>tar</code><code>.gz pma</code>
<code> </code><code>进入目录</code>
<code> </code><code>cd</code> <code>pma</code>
<code> </code><code>更改名字</code>
<code> </code><code>cp</code> <code>config.sample.inc.php config.inc.php</code>
<code> </code><code>编辑配置文件</code>
<code> </code><code>vi</code> <code>config.inc.php</code>
<code> </code><code>在下面句中的修改加密字段</code>
<code> </code><code>$cfg[</code><code>'blowfish_secret'</code><code>] = </code><code>'fsff34242regtegdsf3a8b7c6d'</code>
<a href="https://s5.51cto.com/wyfs02/M00/97/C3/wKiom1kyjPyTzqhBAACx7uavjdw631.png" target="_blank"></a>
<a href="https://s4.51cto.com/wyfs02/M00/97/C5/wKioL1kyjSCAbvQDAAFmzG9PWyE466.png" target="_blank"></a>
7 压力测试
<code> </code><code>vi</code> <code>/etc/hosts</code>
<code> </code><code>#添加域名解析信息</code>
<code> </code><code>10.0.0.110 www.huwho.cn </code>
<code> </code><code>压力测试</code>
<code> </code><code>ab -n 1000 -c 20 http:</code><code>//www</code><code>.huwho.cn/</code>
<a href="https://s4.51cto.com/wyfs02/M01/97/C5/wKioL1kyjn2CtZYpAABF-YyoBmk464.png" target="_blank"></a>
本文转自 PowerMichael 51CTO博客,原文链接:http://blog.51cto.com/huwho/1931968,如需转载请自行联系原作者