本文安装三台服务器,分别装有Nginx,Apache,Nginx作为前端服务器,处理前端资源文件,Apache作为后台服务器,更加的稳定,处理PHP。然后用Nginx的反向代理进行负载均衡。
假设服务器:
192.168.1.111(作为主服务器,并进行负载均衡控制) -> 安装有Nginx,Apache
192.168.1.112(作为从服务器1) -> 安装有Nginx,Apache
192.168.1.113(作为从服务器2) -> 安装有Nginx,Apache
1.在安装之前,先关闭防火墙以及清理已经安装包:
chkconfig iptables off
rpm -e httpd
rpm -e mysql
rpm -e php
yum -y remove httpd
yum -y remove mysql
yum -y remove php
#搜索apache包
rpm -qa http*
#强制卸载apache包
rpm -e --nodeps 查询出来的文件名
#检查是否卸载干净
rpm -qa|grep http*
2.配置CentOS 6.0 第三方yum源(CentOS默认的标准源里没有nginx软件包)
wget http://www.atomicorp.com/installers/atomic
sh ./atomic
yum check-update
3.安装Apache,并将端口设置为8080
yum install httpd
vim /etc/httpd/conf/httpd.conf
Listen 80 #注解去掉,将端口改为8080
ServerName www.example.com:80 #注解去掉,改为相应的端口和域名
service httpd start
chkconfig httpd on
#安装Apache扩展库
yum -y install httpd-manual mod_ssl mod_perl mod_auth_mysql
4.安装Mysql
yum install mysql mysql-server mysql-devel
service mysqld start
chkconfig mysqld on
#安装好后,默认用户名为root,密码为空,需为他重新设置密码。
mysql_secure_installation
5.安装php
yum install php php-devel php-mysql gd php-gd gd-devel php-common php-mbstring php-mcrypt php-ldap php-pear php-xml php-xmlrpc php-imap php-curl
6.配置php
vim /etc/php.ini
cgi.fix_pathinfo = 1 #将注释去掉,开启PHP的pathinfo功能,伪静态要用到。
max_execution_time = 0 #脚本运行的最长时间,默认30秒
max_input_time = 300#脚本可以消耗的时间,默认60秒
memory_limit = 256M#脚本运行最大消耗的内存,根据你的需求更改数值,默认128M
post_max_size = 100M #单提交的最大数据,此项不是限制上传单个文件的大小,而是针对整个表单的提交数据进行限制的。限制范围包括表单提交的所有内容.例如:发表贴子时,贴子标题,内容,附件等…默认8M,这个值一定大于upload_max_filesize
upload_max_filesize = 10M#上载文件的最大许可大小 ,默认2M
7.安装Nginx
yum install nginx
service nginx start
chkconfig nginx on
8.主服务器(192.168.1.111)配置Nginx支持负载均衡
#修改主服务器的主配置nginx.conf,在http{}里添加apache组的upstream,因为nginx占用了80端口,所以我们的服务器apache端口都用8080。
vim /etc/nginx/nginx.conf
#在http里增加upstream
#phpfuzai upstream主要负责交给apache来处理
upstream phpfuzai{
server 192.168.1.111:8080; #主服务器也负责处理php端的运行,正规情况下,都是专用一台主服务器,主要做负载用,其他的都处理,不过我们这里为了测试,所以也把主服务器加上。
server 192.168.1.112:8080; #从服务器1
server 192.168.1.113:8080; #从服务器2
}
#htmlfuzai upstream主要负责交给nginx来处理,由于主服务器监听了80端口,所以避免无限循环,就不需要加入htmlfuzai组。
upstream htmlfuzai{
server 192.168.1.112:80;#从服务器1
server 192.168.1.113:80;#从服务器2
}
#修改虚拟主机配置default.conf,进行proxy_pass配置
vim /etc/nginx/conf.d/default.conf
location / {
proxy_pass http://htmlfuzai;
#保留用户真实信息
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
location ~ \.php$ {
proxy_pass http://phpfuzai;
#保留用户真实信息
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
9.从服务器1和2,配置html以及php的处理
从服务器安装有Nginx和Apache,并且都在运行,Nginx是80端口,负责处理静态资源,Apache是8080端口,负责处理php后台语言。
#修改Nginx配置,让其根目录与Apache的目录相同
vim /etc/nginx/conf.d/default.conf
#修改location / 为以下这样。
location / {
root /var/www/html;
index index.html index.htm;
}
10.安装phpmyadmin
#到https://www.phpmyadmin.net/downloads/下载对应版本,我下载的是支持php5.3以上的版本。
cd /usr/share/nginx/html/
wget https://files.phpmyadmin.net/phpMyAdmin/4.4.15.5/phpMyAdmin-4.4.15.5-all-languages.zip
unzip phpMyAdmin-4.4.15.5-all-languages.zip
mv phpMyAdmin-4.4.15.5-all-languages zhaonimei
11.重启Nginx Apache
service nginx restart
service httpd restart
12.测试Nginx是否解析php
html测试:在从服务器(1、2)上分别建立不同内容的haha.html
本地浏览器输入:192.168.1.111/haha.html,看看每次刷新的内容是不是变化的,如果变化了,则测试成功。
php测试:在主从服务器上分别建立不同的test.php
本地浏览器输入:192.168.1.111/test.php,看看每次刷新的内容是不是变化的,如果变化了,则测试成功。
本地浏览器输入:192.168.1.111/zhaonimei
显示phpmyadmin登录界面 环境搭建成功
相关文章:
Nginx和Apache伪静态配置参考
分享到:
相关推荐
### Centos6.5镜像文件下载与安装详解 #### 一、CentOS 6.5简介 CentOS是Community ENTerprise Operating System的缩写,是一个基于Linux内核的操作系统,它主要提供了企业级的计算环境。CentOS 6.5作为CentOS 6...
本文将详细介绍如何在CentOS 6.5上进行MySQL 5.6的一键安装过程,包括必要的环境准备、安装步骤、配置优化以及安全设置。 一、环境准备 在开始安装之前,确保你的CentOS 6.5系统已经更新到最新,运行以下命令进行...
centos 6.5 telnet 客户端 安装文件 rpm包 centos 6.5 telnet 服务端 安装文件 rpm包 http://vault.centos.org/6.5/os/x86_64/Packages/ 从官网下载亲测可以用
centos 6.5下的文件上传下载服务安装和配置 centos 6.5下的文件上传下载服务是指在centos 6.5操作系统中安装和配置文件上传下载服务,以解决上传和下载文件的问题。这个服务可以让用户轻松地上传和下载文件,而不...
在本案例中,我们有"CentOS6.5离线安装openssh8.6p1软件包-步骤及依赖.rar"这个压缩包文件,它应该包含了openssh 8.6p1以及所有必需的依赖项。在拥有互联网连接的机器上,你需要访问OpenSSH的官方网站或者通过yum...
### CentOS 6.5 下安装 FFMPEG 的详细步骤及注意事项 #### 一、环境准备与背景介绍 FFMPEG 是一款强大的多媒体处理工具,它能够进行音视频编解码、格式转换、流媒体抓取等多种操作。对于需要处理大量音视频数据的...
在CentOS 6.5环境下安装Oracle 10g是一项技术性强且需要精心准备的任务。Oracle 10g是一款广泛使用的数据库管理系统,它提供了高性能、高可用性和安全性。在CentOS 6.5上部署Oracle 10g需要满足一定的硬件和软件要求...
cronie-1.4.4-12.el6.x86_64.rpm cronie-anacron-1.4.4-12.el6.x86_64.rpm crontabs-1.10-33.el6.noarch.rpm procmail-3.22-25.1.el6.x86_64.rpm sendmail-8.14.4-8.el6.x86_64.rpm
CentOS 6.5 安装教程详解 CentOS 6.5 是一个稳定、功能强大且广泛应用的 Linux 发行版,本文将详细介绍 CentOS 6.5 的安装步骤,包括虚拟机的安装、CentOS 镜像文件的下载和使用、连接工具的配置等内容。 一、...
自己写的文档,经过亲自实践并截图的。centos6.5下安装11g任何版本
### CentOS 6.5 for Oracle 的安装与配置详解 #### 一、概述 本文将详细介绍如何在服务器上安装并配置CentOS 6.5系统,特别是针对Oracle数据库环境的优化和配置方法。CentOS 6.5是一款稳定且广泛使用的Linux发行版...
标题中的知识点:“oracle 11g for centos6.5静默安装”说明本文是关于如何在CentOS 6.5操作系统上通过静默方式安装Oracle 11g数据库的过程。静默安装是指无需人工干预,通过预设参数或脚本实现自动安装的过程。这种...
CentOS 6.5 的 软件源很多官方已经停止维护,该文件包内配置好的yum源是可以正常使用的。将原/etc/yum.repos.d/目录下原来的 .repo 备份, 然后把本文件包内的repo文件复制过去, yum clean all 后,再 yum ...
Centos6.5下安装Mysql5.7+的脚本及安装手册。 安装包需要从网上下载,我测试的安装包为mysql-5.7.10-linux-glibc2.5-x86_64.tar.gz,500多M,上传不了。注意:必须是二进制安装版的,不能是rpm或源码版的。 经我测试...
### CentOS 6.5 下安装 Redis 2.8.7 的详细步骤与常见问题解决方案 #### 一、准备工作 在开始安装 Redis 之前,确保你的 CentOS 6.5 系统已经更新到了最新版本,并且安装了必要的工具。可以通过以下命令进行系统...
CentOs6.5镜像源
Centos6.5 下Docker的安装与简单配置。。。。。。。。
标签“centos6.5 freesw”表明该文档专门用于CentOS 6.5操作系统上安装Freeswitch。 部分内容解释 以下是对部分内容的解释: 1. 安装CentOS的同时,需要选择全部的开发包,以确保安装过程的顺畅。 2. 安装依赖包...
在本文中,我们将详细探讨如何在虚拟机上正确安装CentOS 6.5,这是一个深受开发者和系统管理员喜爱的老版本Linux发行版。虽然现在CentOS已经更新到更现代的版本,但仍然有一些场合需要使用旧版本,比如学习历史版本...