15 nginx反向代理实现nginx+apache动静分离

一:nginx反向代理实现nginx+apache动静分离
-------------概念---------------------------

nginx反向代理服务器+负载均衡

用nginx做反向代理和负载均衡非常简单,

支持两个用法 1个proxy, 1个upstream,分别用来做反向代理,和负载均衡

以反向代理为例, nginx不自己处理php的相关请求,而是把php的相关请求转发给apache来处理.

 这不就是传说的”动静分离”,动静分离不是一个严谨的说法,叫反向代理比较规范



---------------------------------------------------------------

yum install httpd \
httpd-manual mod_ssl \
mod_perl mod_auth_mysql \
php-mcrypt php-gd php-xml \
php-mbstring php-ldap \
php-pear php-xmlrpc \
mysql-connector-odbc \
mysql-devel libdbi-dbd-mysql


修改httpd.conf 配置
(1)把端口改成8080
(2)修改目录文件夹地址指向nginx/www/html [292行 DocumentRoot "/usr/share/nginx/html"]
(3) AllowOverride None 修改成 AllowOverride all 记得有多行需要配置
(4) Deny from all 修改成 Allow from all

(5)开启:  Include conf/exra/httpd-vhosts.conf
启动httpd:/etc/init.d/httpd start

配置:nginx.conf
(1)在server 中的location端中加入 proxy_pass http://127.0.0.1:8080;
如:
location ~ \.php$ {
proxy_pass http://127.0.0.1:8080;

}
重启nginx ./sbin/nginx -s reload


访问ecshop 127.0.0.1/ecshop/index.php

出现错误:Forbidden

You don't have permission to access /ecshop/index.php on this server.

原因是没有权限,解决办法,修改权限。

查看权限:ll ;发现有读写权限,不是root身份。

解决办法拷贝一份出来。

cp -rf ecshop ecshop1

在查看权限 发现是root身份了。

访问ecshop 127.0.0.1/ecshop/index.php

OK 成功。如果不成功则看错误日志。。。。。

 

你可能感兴趣的:(apache)