Php7 + nginx configuration (osx environment)

Source: Internet
Author: User
Tags sendfile
This is my nginx configuration {code ...} php. conf {code ...} in addition to adding this line in PHP settings, the default {code...} is used ...} parameter {code...} when using brew to install PHP ...} PHP port test {code ...} I don't know why. Click the PHP file under www or it will show null... this is my nginx Configuration

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;}

Php. conf

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;}

In PHP settings, except for adding this line, all others are default.

open_basedir = /usr/local/var/www/

Parameters for installing PHP with brew

brew install --without-apache --with-fpm --with-mysql php70

PHP port Test

>lsof -Pni4 | grep LISTEN | grep phpphp-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)

I don't know why. Click the PHP file under www to either display blank or download it directly.

I used nginx for the first time. I hope to explain why this problem occurs)

Reply content:

This is my nginx Configuration

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;}

Php. conf

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;}

In PHP settings, except for adding this line, all others are default.

open_basedir = /usr/local/var/www/

Parameters for installing PHP with brew

brew install --without-apache --with-fpm --with-mysql php70

PHP port Test

>lsof -Pni4 | grep LISTEN | grep phpphp-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)

I don't know why. Click the PHP file under www to either display blank or download it directly.

I used nginx for the first time. I hope to explain why this problem occurs)

 server {        listen       8080;        server_name  localhost;        location / {            root   html;

This root account is not written correctly.
Root should be the root directory of the project. For example, if my project is in/usr/local/www/project, root should write this.

Contact Us

The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion; products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the content of the page makes you feel confusing, please write us an email, we will handle the problem within 5 days after receiving your email.

If you find any instances of plagiarism from the community, please send an email to: info-contact@alibabacloud.com and provide relevant evidence. A staff member will contact you within 5 working days.

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.