Home  >  Article  >  Backend Development  >  关于php7+nginx的配置(osx环境)

关于php7+nginx的配置(osx环境)

WBOY
WBOYOriginal
2016-06-06 20:23:141343browse

这是我的nginx配置

<code>worker_processes  1;

error_log  /usr/local/var/log/nginx/error.log debug;

pid        /usr/local/var/run/nginx.pid;


events {
    worker_connections  256;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /usr/local/var/log/nginx/access.log main;

    sendfile        on;

    keepalive_timeout  65;

    server {
        listen       8080;
        server_name  localhost;

        location / {
            root   html;
            index  index.html index.htm;
        }

        include php.conf;

        #error_page  404              /404.html;
        
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

    }

    include servers/*;
    include /usr/local/etc/nginx/sites-enabled/*;

    autoindex on;
    autoindex_exact_size off;
}</code>

php.conf

<code>location ~ [^/]\.php(/|$) {
        fastcgi_split_path_info ^(.+?\.php)(/.*)$;
        if (!-f $document_root$fastcgi_script_name) {
                return 404;
        }

        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        include fastcgi_params;
}</code>

PHP设置除了增加了这一行其他都是默认

<code>open_basedir = /usr/local/var/www/</code>

用brew安装PHP时候的参数

<code>brew install --without-apache --with-fpm --with-mysql php70</code>

PHP端口测试

<code>>lsof -Pni4 | grep LISTEN | grep php
php-fpm      89 joshua    6u  IPv4 0x765c1f70dd81f88b      0t0  TCP 127.0.0.1:9000 (LISTEN)
php-fpm     310 joshua    0u  IPv4 0x765c1f70dd81f88b      0t0  TCP 127.0.0.1:9000 (LISTEN)
php-fpm     311 joshua    0u  IPv4 0x765c1f70dd81f88b      0t0  TCP 127.0.0.1:9000 (LISTEN)</code>

目前不知道为什么,点击www下的php文件,要么显示空白,要么直接下载下来了

第一次所用nginx,希望回答的同时解释一下为什么发生这样的问题)

回复内容:

这是我的nginx配置

<code>worker_processes  1;

error_log  /usr/local/var/log/nginx/error.log debug;

pid        /usr/local/var/run/nginx.pid;


events {
    worker_connections  256;
}


http {
    include       mime.types;
    default_type  application/octet-stream;

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '
                      '$status $body_bytes_sent "$http_referer" '
                      '"$http_user_agent" "$http_x_forwarded_for"';

    access_log  /usr/local/var/log/nginx/access.log main;

    sendfile        on;

    keepalive_timeout  65;

    server {
        listen       8080;
        server_name  localhost;

        location / {
            root   html;
            index  index.html index.htm;
        }

        include php.conf;

        #error_page  404              /404.html;
        
        # redirect server error pages to the static page /50x.html
        #
        error_page   500 502 503 504  /50x.html;
        location = /50x.html {
            root   html;
        }

    }

    include servers/*;
    include /usr/local/etc/nginx/sites-enabled/*;

    autoindex on;
    autoindex_exact_size off;
}</code>

php.conf

<code>location ~ [^/]\.php(/|$) {
        fastcgi_split_path_info ^(.+?\.php)(/.*)$;
        if (!-f $document_root$fastcgi_script_name) {
                return 404;
        }

        fastcgi_pass 127.0.0.1:9000;
        fastcgi_index index.php;
        include fastcgi_params;
}</code>

PHP设置除了增加了这一行其他都是默认

<code>open_basedir = /usr/local/var/www/</code>

用brew安装PHP时候的参数

<code>brew install --without-apache --with-fpm --with-mysql php70</code>

PHP端口测试

<code>>lsof -Pni4 | grep LISTEN | grep php
php-fpm      89 joshua    6u  IPv4 0x765c1f70dd81f88b      0t0  TCP 127.0.0.1:9000 (LISTEN)
php-fpm     310 joshua    0u  IPv4 0x765c1f70dd81f88b      0t0  TCP 127.0.0.1:9000 (LISTEN)
php-fpm     311 joshua    0u  IPv4 0x765c1f70dd81f88b      0t0  TCP 127.0.0.1:9000 (LISTEN)</code>

目前不知道为什么,点击www下的php文件,要么显示空白,要么直接下载下来了

第一次所用nginx,希望回答的同时解释一下为什么发生这样的问题)

<code> server {
        listen       8080;
        server_name  localhost;

        location / {
            root   html;</code>

目测是这个root写的不对.
root应该是指的项目根目录.比如我的项目在/usr/local/www/project,那么root应该写这个.

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Previous article:MySql字段加1出错Next article:跨域报错啦啦~~~~~~