Ubuntu之安装Nginx、PHP

前提

如果是Ubuntu,可能默认已经安装了Apache2,要先卸载

$ sudo apt-get remove apache2
$ sudo apt-get remove apache*

安装nginx

$ sudo apt-get install nginx

测试nginx

打开浏览器,输入http://127.0.0.1,如果出现

Welcome to nginx

则表示nginx安装成功。

安装配置PHP

安装 PHP for Processing

$ sudo apt-get install php5-fpm php5-mysql

Since Nginx does not contain native PHP processing like some other web servers, we will need to install php5-fpm, which stands for “fastCGI process manager”. We will tell Nginx to pass PHP requests to this software for processing.

We can install this module and will also grab an additional helper package that will allow PHP to communicate with our database backend. The installation will pull in the necessary PHP core files. Do this by typing:

配置 PHP Processor

$ sudo gedit /etc/php5/fpm/php.ini


    cgi.fix_pathinfo=0

This is an extremely insecure setting because it tells PHP to attempt to execute the closest file it can find if a PHP file does not match exactly. This basically would allow users to craft PHP requests in a way that would allow them to execute scripts that they shouldn’t be allowed to execute.

We will change both of these conditions by uncommenting the line and setting it to “0” like this:

Save and close the file when you are finished.

重启 PHP processor
$ sudo service php5-fpm restart

让nginx使用PHP Processor

$ sudo gedit /etc/nginx/sites-available/default

按下面修改配置文件


server {
    listen 80 default_server;
    listen [::]:80 default_server ipv6only=on;

    root /usr/share/nginx/html;
    index index.php index.html index.htm;

    server_name server_domain_name_or_IP;

    location / {
        try_files $uri $uri/ =404;
    }

    error_page 404 /404.html;
    error_page 500 502 503 504 /50x.html;
    location = /50x.html {
        root /usr/share/nginx/html;
    }

    location ~ \.php$ {
        try_files $uri =404;
        fastcgi_split_path_info ^(.+\.php)(/.+)$;
        fastcgi_pass unix:/var/run/php5-fpm.sock;
        fastcgi_index index.php;
        fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
        include fastcgi_params;
    }
}

使对php的配置立即生效

$ sudo service nginx restart

建立测试页

$ sudo gedit /usr/share/nginx/html/info.php
内容为:

<?php
    phpinfo();
?>

访问http://127.0.0.1/info.php
如果出现
这里写图片描述
则表示配置成功

参考资料

https://www.digitalocean.com/community/tutorials/how-to-install-linux-nginx-mysql-php-lemp-stack-on-ubuntu-14-04

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值