lnmpa前端nginx后端apache配置案例


本文就是實現Nginx作為前端,apache作為后端。當用戶訪問的是80端口的nginx,然后nginx將靜態內容留給自己,其余的轉發給非80端口的apache,apache處理完畢后再回傳給nginx。

1.修改(或者添加)nginx配置(vhost),本案例在nginx/conf/vhosts里面創建文件test.conf

#cat /usr/local/nginx/conf/vhosts/test.conf
server {
    listen       80;
    server_name  項目域名;
    root /home/wwwroot/test;
    index index.html index.php ;
    error_page 404 @proxy;
    include proxy-pass-php.conf;
}

  以上配置中的proxy-pass-php.conf,在nginx的conf文件夾中,proxy-pass-php.conf內容如下:

        location /
        {
            try_files $uri @apache;
        }

        location @apache
        {
            internal;
            proxy_pass http://127.0.0.1:88;
            include proxy.conf;
        }

        location ~ [^/]\.php(/|$)
        {

            proxy_pass http://127.0.0.1:88;
            include proxy.conf;
	}
	# nginx找不到文件時,轉發請求給后端Apache
    	location @proxy {
        	proxy_set_header Host $http_host;
        	proxy_set_header X-Real-IP $remote_addr;
        	proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        	proxy_pass http://127.0.0.1:88;
    	}

  

2.nginx配置完畢,接下來就要配置apache了,首先確定apache的端口與上面配置的一致(上面配置了88端口是apache的),找到apache/conf/httpd.conf這個文件,修改監聽端口:

Listen 127.0.0.1:88

3.配置apache的vhost,該目錄一般在apache/conf/vhost,本案例在apache/conf/vhost創建test.conf,內容如下:

<VirtualHost *:88>
ServerAdmin admin@email.com
#php_admin_value open_basedir "/ home / wwwroot:/ tmp /:/ var / tmp /:/ proc /"
DocumentRoot  /home/wwwroot/test
ServerName  項目域名
   <Directory /home/wwwroot/test/>
       allow from all
   </Directory>
</Virtualhost>

  

4.重啟ngnix和apache

service ngnix restar
service httpd restar

  

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM