ubuntu16.04搭建nginx+php7.0-fpm

nginx的安装

apt-get update
apt-get install nginx
nginx -v 

php安装

apt-get install python-software-properties software-properties-common

apt-get install php7.0-fpm php7.0-cli php7.0-mcrypt php7.0-mysql php7.0-mbstring php7.0-xml php7.0-dev php7.0-zip php7.0-gd php7.0-curl

MySQL的安装

sudo apt-get install mysql-server mysql-client

配置nginx

nginx所有的配置在 /etc/nginx/nginx.conf中

    nginx.conf配置里面包括了

      include /etc/nginx/conf.d/*.conf;

           include /etc/nginx/sites-enabled/*;
        这两个配置,所以这里面的配置也是有效的。
       错误日志 error_log /var/log/nginx/error.log;

这里我们把配置写在 /etc/nginx/sites-available/default中,如下更改

 server {
#       listen 80 default_server;
#       listen [::]:80 default_server;
        listen 80;
        root /usr/share/nginx/html;
        index index.php index.html index.htm;
        server_name localhost;

为nginx添加php支持

配置vi /etc/nginx/sites-available/default文件

location ~ \.php$ {
    include snippets/fastcgi-php.conf;
    #~ # With php7.0-cgi alone:
    #~ fastcgi_pass 127.0.0.1:9000;  #这一行是配置单纯php
    #~ # With php7.0-fpm:
    fastcgi_pass unix:/run/php/php7.0-fpm.sock; #这一行是配置socket,与上边冲突
}

配置/etc/php/7.0/fpm/php-fpm-conf,在末尾添加

listen = /run/php/php7.0-fpm.sock # 与上边配置的socket保持一致

再修改/etc/nginx/conf.d/test.conf的内容

server {
		 listen  80;
                server_name www.abc.com abc.com;
                set $root_path '/var/www/test';
                root $root_path;
                index index.php index.html index.htm;

                #add_header Access-Control-Allow-Origin *;

                try_files $uri $uri/ @rewrite;

                location @rewrite {
                        rewrite ^/(.*)$ /index.php/$1;
                }

                location ~ \.php {
                        fastcgi_pass unix:/run/php/php7.0-fpm.sock;
                        fastcgi_index /index.php;

                        fastcgi_split_path_info       ^(.+\.php)(/.+)$;
                        fastcgi_param PATH_INFO       $fastcgi_path_info;
                        fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
                        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
                        include                       fastcgi_params;
                }

                location ~ /\.ht {
                   deny all;
                }
    }

  • 修改完后记得nginx -t检查一下是否有误
    启动并测试
sudo service php7.0-fpm start
sudo service nginx start

在之前建立的站点根目录中新建测试文件index.phpvi /var/www/test/index.php

1.显示php信息的
<?php
    phpinfo();
?>


 2.一个测试页面
 <html>
 <head>
  <title>PHP 测试</title>
 </head>
 <body>
 <?php echo '<p>Hello World</p>'; ?>
 </body>
</html>

最后在客户机访问 ip/index.php测试是否成功,测试结果
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/qq_42747175/article/details/85248227
今日推荐