Heim  >  Artikel  >  Backend-Entwicklung  >  关于php7+nginx的配置(osx环境)

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

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

这是我的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应该写这个.

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Vorheriger Artikel:MySql字段加1出错Nächster Artikel:跨域报错啦啦~~~~~~