您的位置:首页 > 运维架构 > Nginx

【mac OS X】nginx-apache-php-fpm

2014-11-20 19:45 288 查看
1, apache工作方式:

监听一个端口(eg.80), 文件把内容通过tcp/http协议传到这个端口,apache查看文件后缀,决定用哪个库解读它,用哪个库是怎么决定的呢,在配置文件中有若干LoadModule xxx/../xxx.so这样的东西,.so就是一个库,解读特定文

件的库。那个库解读完后返回给apache,apache再把内容返回给客户端.

eg(#代表注释).
LoadModule authn_file_module libexec/apache2/mod_authn_file.so
#LoadModule ext_filter_module libexec/apache2/mod_ext_filter.so
#LoadModule request_module libexec/apache2/mod_request.so
#LoadModule include_module libexec/apache2/mod_include.so
LoadModule filter_module libexec/apache2/mod_filter.so
#LoadModule rewrite_module libexec/apache2/mod_rewrite.so
#LoadModule php5_module libexec/apache2/libphp5.so
LoadModule php5_module    /usr/local/opt/php56/libexec/apache2/libphp5.so
#LoadModule hfs_apple_module libexec/apache2/mod_hfs_apple.so


2, nginx工作方式

nginx的配置文件中有一个server{}.里面的内容有监听端口,webRoot目录,等,然后有个重要的就是,对于接收到什么文件怎么处理的部分如 location ~\.php${……fastcgi_pass portNum;}这个就说明接收到.php文件就当作快速公共网关接口传到portNum,然后把那个端口返回的东西再返回给客户端.

eg(#代表注释).
server {
    listen       8080;
    server_name  localhost;

    root /Users/tys/phpWeb/; # 该项要修改为你准备存放相关网页的路径

    location / { 
        index index.php index.html;
        autoindex on; 
    }   

    #proxy the php scripts to php-fpm  
    location ~ \.php$ {
        include /usr/local/etc/nginx/fastcgi.conf;
        fastcgi_intercept_errors on; 
        fastcgi_pass   127.0.0.1:9000; 
    }   
}


3, php-fpm

它只有一个功能,就是解读.php文件,它也要监听一个端口,也就是前面nginx的fastcgi_pass端口,nginx把文件传过来后,hph-fpm解读它,解读完成后返回给nginx.

cgi: Common Gateway Interface.

fpm: Fast CGI Process Manager.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: