激情久久久_欧美视频区_成人av免费_不卡视频一二三区_欧美精品在欧美一区二区少妇_欧美一区二区三区的

服務器之家:專注于服務器技術及軟件下載分享
分類導航

云服務器|WEB服務器|FTP服務器|郵件服務器|虛擬主機|服務器安全|DNS服務器|服務器知識|Nginx|IIS|Tomcat|

服務器之家 - 服務器技術 - Nginx - nginx虛擬主機防webshell完美版

nginx虛擬主機防webshell完美版

2019-10-09 16:37DoDo's Blog Nginx

nginx虛擬主機防webshell完美版,使用nginx的朋友可以參考下。

我們先來看下nginx.conf

  server
  {
    listen       80;
    server_name  www.a.com;
    index index.html index.htm index.php;
    root  /data/htdocs/www.a.com/;

    #limit_conn   crawler  20;    

    location ~ .*\.(php|php5)?$
    {      
      #fastcgi_pass  unix:/tmp/php-cgi.sock;
      fastcgi_pass  127.0.0.1:9000;
      fastcgi_index index.php;
      include fcgi.conf;
    }

}

  server
  {
    listen       80;
    server_name  www.b.com;
    index index.html index.htm index.php;
    root  /data/htdocs/www.b.com/;

    #limit_conn   crawler  20;    

    location ~ .*\.(php|php5)?$
    {      
      #fastcgi_pass  unix:/tmp/php-cgi.sock;
      fastcgi_pass  127.0.0.1:9000;
      fastcgi_index index.php;
      include fcgi.conf;
    }

}

nginx在80端口接受到訪問請求后,會把請求轉發(fā)給9000端口的php-cgi進行處理

而如果修改php.ini中open_basedir= ../../../../../ ,針對兩個不同的網站,www.a.com , www.b.com都會把請求發(fā)送給9000處理,而如果先訪問www.a.com那么../../../../../就會變成A網站的根目錄地址,然后這時候如果你訪問www.b.com,那么open_basedir仍然是A網站的根目錄,但是對于B來說,又是不允許訪問的,所以就造成了,第二個站點打開以后會出現no input files,那么有什么解決辦法呢?

我們可以把不同的虛擬主機發(fā)送到不同的php-cgi端口進行處理,當然響應的php-fpm配置文件中的open_basedir也不同。。我們來看看怎么配置。。

首先,nginx.conf配置如下

 server
  {
    listen       80;
    server_name  www.a.com;
    index index.html index.htm index.php;
    root  /data/htdocs/www.a.com/;

    #limit_conn   crawler  20;    

    location ~ .*\.(php|php5)?$
    {      
      #fastcgi_pass  unix:/tmp/php-cgi.sock;
      fastcgi_pass  127.0.0.1:9000;
      fastcgi_index index.php;
      include fcgi.conf;
    }

}

  server
  {
    listen       80;
    server_name  www.b.com;
    index index.html index.htm index.php;
    root  /data/htdocs/www.b.com/;

    #limit_conn   crawler  20;    

    location ~ .*\.(php|php5)?$
    {      
      #fastcgi_pass  unix:/tmp/php-cgi.sock;
      fastcgi_pass  127.0.0.1:9001;
      fastcgi_index index.php;
      include fcgi.conf;
    }

}

注意:www.a.com 的請求發(fā)送到9000端口 , www.b.com的請求發(fā)送到9001端口,依次類推

nginx配置修改了,相對的,php-fpm.conf也要修改

每個站點建一個conf

 

A站點

#cp /usr/local/webserver/php/etc/php-fpm.conf /usr/local/webserver/php/etc/www.a.com.conf

#vi /usr/local/webserver/php/etc/www.a.com.conf

找到php_defines,添加

<value name="open_basedir">/data/htdocs/www.a.com:/tmp:/var/tmp</value>

 nginx虛擬主機防webshell完美版

 

 

B站點

#cp /usr/local/webserver/php/etc/php-fpm.conf /usr/local/webserver/php/etc/www.b.com.conf

#vi /usr/local/webserver/php/etc/www.b.com.conf

找到php_defines,添加

<value name="open_basedir">/data/htdocs/www.b.com:/tmp:/var/tmp</value>

 

nginx虛擬主機防webshell完美版

找到listen_address,修改為

<value name="listen_address">127.0.0.1:9001</value>   注意這里的端口號

 

nginx虛擬主機防webshell完美版

最后要修改php-fpm啟動腳本

#vi /usr/local/webserver/php/sbin/php-fpm

nginx虛擬主機防webshell完美版

注釋掉原來的 #$php_fpm_BIN --fpm $php_opts,添加

$php_fpm_BIN --fpm --fpm-config /usr/local/webserver/php/etc/www.a.com.conf

$php_fpm_BIN --fpm --fpm-config /usr/local/webserver/php/etc/www.b.com.conf

啟動服務

#/usr/local/webserver/php/sbin/php-fpm restart

查看端口

#netstat -tln

 nginx虛擬主機防webshell完美版

開了9000 9001分別處理兩個站點請求

兩個php-cgi主進程加載不同的conf文件,這樣就完美解決了虛擬主機webshell能跨目錄的問題

當然,啟動之前記得conf里面的max_children,開啟php-cgi子進程數,相應要減少一些,以免造成內存不足

文章來源:DoDo's Blog 
原文地址:http://www.sectop.com/post/35.html

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 日本精品婷婷久久爽一下 | 欧美一级特黄a | 91精品国啪老师啪 | 国产精选久久 | 国产日本欧美在线观看 | 国产午夜精品一区二区三区免费 | a视频网站| 91成人午夜性a一级毛片 | 久久狠狠高潮亚洲精品 | 美国av免费看 | 国产女同疯狂激烈互摸 | 日本精品久久久一区二区三区 | 成人黄色在线免费观看 | 国产精品色综合 | 在线观看av国产一区二区 | 成人羞羞网站入口 | 舌头伸进添的我好爽高潮网站 | 日本中文字幕电影在线观看 | 国产成人高清成人av片在线看 | 精品无吗乱吗av国产爱色 | 哪里可以看免费的av | 免费一级a毛片在线播放视 日日草夜夜操 | 一级做a爱片久久毛片a高清 | av大全在线免费观看 | 九九久久视频 | 国内精品久久久久久久久久 | 欧美精品123区 | 欧美一级黑人 | 欧美一级美国一级 | 国产午夜精品久久久久久免费视 | 午夜精品久久久久久久爽 | 午夜久久久精品一区二区三区 | h视频免费看 | 在线91视频| 国产精品久久久久影院老司 | 国产高潮国产高潮久久久91 | 亚洲国产精品一区二区久久 | 成人福利在线观看 | 中文字幕一区久久 | 国产精品野外av久久久 | 舌头伸进添的我好爽高潮网站 |