服务器之家:专注于服务器技术及软件下载分享
分类导航

Linux|Centos|Ubuntu|系统进程|Fedora|注册表|Bios|Solaris|Windows7|Windows10|Windows11|windows server|

服务器之家 - 服务器系统 - Ubuntu - Ubuntu/Debian上安装Nginx+php环境详细教程

Ubuntu/Debian上安装Nginx+php环境详细教程

2019-11-25 18:56Ubuntu教程网 Ubuntu

本教程将要向您展现如何在Ubuntu操作系统上面安装,教程同样适用在Debian,尽管有一点点小差别,但并没有太大影响。

尽管Apache已经占据半片江山,但很多人仍然在寻找其他的方式去托管他们的站点,Apache不只是一个选择,其他很多优秀的服务器程序例如lighthttp和nginx也是不错的选择。本教程将要向您展现如何在Ubuntu操作系统上面安装,教程同样适用在Debian,尽管有一点点小差别,但并没有太大影响。怎么样,下面我们开始吧。

0.开始注意

为了完成教程中提到的操作,我们假设您已经安装了一个基本的Debian或者Ubuntu操作系统。怎么安装系统这是不同的教程了,这里就不再详细说明。本教程主要介绍如何简单获取Nginx+php的运行环境。

1.安装Nginx

第一步要做的就是从库中下载,这个操作是非常简单的。

sudo apt-get install nginx

更改默认的虚拟站点配置,文件在:

sudo vim /etc/nginx/sites-available/default

一个漂亮的关键配置是:

server {

listen 80;

server_name localhost;

access_log /var/log/nginx/localhost.access.log;

## Default location

location / {

root /var/www;

index index.php;

}

## Images and static content is treated different

location ~* ^.+.(jpg|jpeg|gif|css|png|js|ico|xml)$ {

access_log off;

expires 30d;

root /var/www;

}

## Parse all .php file in the /var/www directory

location ~ .php$ {

fastcgi_split_path_info ^(.+.php)(.*)$;

fastcgi_pass backend;

fastcgi_index index.php;

fastcgi_param SCRIPT_FILENAME /var/www$fastcgi_script_name;

include fastcgi_params;

fastcgi_param QUERY_STRING $query_string;

fastcgi_param REQUEST_METHOD $request_method;

fastcgi_param CONTENT_TYPE $content_type;

fastcgi_param CONTENT_LENGTH $content_length;

fastcgi_intercept_errors on;

fastcgi_ignore_client_abort off;

fastcgi_connect_timeout 60;

fastcgi_send_timeout 180;

fastcgi_read_timeout 180;

fastcgi_buffer_size 128k;

fastcgi_buffers 4 256k;

fastcgi_busy_buffers_size 256k;

fastcgi_temp_file_write_size 256k;

}

## Disable viewing .htaccess & .htpassword

location ~ /.ht {

deny all;

}

}upstream backend { server 127.0.0.1:9000;}

好了,我们完成到这里,下面我们需要安装PHP所需要的文件。

2.安装PHP

很多站点都使用PHP提供动态内容,他们可能是一个wiki一个博客,或者一个论坛什么的。

如果你现在运行的是Ubuntu,我们首先需要解决两种不同的deb包,如果你运行的是amd64版本,那需要更改i386为amd64

注意:如果是debian则不需要做这些

cd /tmp

wget http://us.archive.ubuntu.com/ubuntu/pool/main/k/krb5/libkrb53_1.6.dfsg.4~beta1-5ubuntu2_i386.deb

wget http://us.archive.ubuntu.com/ubuntu/pool/main/i/icu/libicu38_3.8-6ubuntu0.2_i386.deb

sudo dpkg -i *.deb

再次说明,这个只需要在Ubuntu上面操作就可以了,如果是最新版本的12.04可以省略掉这个。

下面剩余部分将在Ubuntu和Debian上面都通用。

我们需要增加APT源来增加deb包,所以我们可以使用php5.3和php-fpm

sudo echo "deb http://php53.dotdeb.org stable all" >> /etc/apt/sources.list

更新apt:

sudo apt-get update

下面我们开始安装PHP(第一部分)

sudo apt-get install php5-cli php5-common php5-suhosin

我们需要安装命令行,不然接下来就会出现些小问题

sudo apt-get install php5-fpm php5-cgi

如果你打算使用数据库或者一些需要的模块(例如:mcrypt,ldap,snmp等)你同样可以安装他们。

好了,我们现在已经安装完了nginx和php

一个注意点:如果你使用"php的短标记(

3.完成

重启nginx服务器

sudo /etc/init.d/nginx restart

配置完成php.ini后需要重启php5-fpm,使用命令

sudo /etc/init.d/php5-fpm restart

全部完成,你可以运行了。

4.测试

我们可以在/var/www中创建一个index.php的文件,内容如下:

通过浏览器访问,你可以看到php的一个大致的信息,如果没有则说明一些配置错误,需要重新检查。

5.问题和最终提示

如果你没有看到phpinfo,可能会出现一些错误,那可以执行:

sudo tail /var/log/nginx/error.log

查看错误日志,另外每次当你修改了php.ini后,需要重启php5-fpm。无需重启nginx。

在默认的配置中nginx是启用了fastcgi的错误日志的,如果看到一个严重的错误(例如出现"cannot redeclare class xyz"),nginx可以看到这个“漂亮的”错误页面,那可能是一些错误发生了。

如果这样你可以关闭,如果php5-fpm不能运行,你的php文件将不会被解析,并且nginx会显示一个错误页面。

好了,我猜你已经完成了,并且现在使用nginx作为你的web服务器,nginx是一个小巧、漂亮并且你可以配置很多东西的一个东东,如果你需要伪静态,注意nginx不会运行 .htaccess 文件,你需要伪静态更改vhost配置。

如果对在Linux下感兴趣的朋友可以查看《Linux下的DedeCMS站点高级安全策略》

翻译:天涯

原文:http://www.howtoforge.com/installing-php-5.3-nginx-and-php-fpm-on-ubuntu-debian

延伸 · 阅读

精彩推荐
  • Ubuntu如何在ubuntu系统中安装pycharm工具并运行

    如何在ubuntu系统中安装pycharm工具并运行

    在Windows系统中安装pycharm,只需要下载安装包,然后根据指令一步一步操作;而在Linux系统中的Ubuntu中安装pycharm,需要下载安装包,还有安装相关的其他软件...

    百度经验12082019-10-21
  • UbuntuUbuntu安装和卸载CUDA和CUDNN的实现

    Ubuntu安装和卸载CUDA和CUDNN的实现

    这篇文章主要介绍了Ubuntu安装和卸载CUDA和CUDNN的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们...

    夜雨飘零14632020-08-04
  • UbuntuUbuntu17.10怎么添加日历事项? Ubuntu添加行程提醒的教程

    Ubuntu17.10怎么添加日历事项? Ubuntu添加行程提醒的教程

    Ubuntu17.10怎么添加日历事项?Ubuntu17.10系统中有一个日程管理功能,可以在日历中添加行程提醒,下面我们就来看看Ubuntu添加行程提醒的教程,需要的朋友可...

    服务器之家2812019-06-19
  • UbuntuUbuntu下安装Chrome的方法分享

    Ubuntu下安装Chrome的方法分享

    本文给大家分享的是Ubuntu下安装Chrome的方法,安装的过程中发现还是挺麻烦的,就记录下来推荐给大家,有需要的小伙伴可以参考下。...

    Ubuntu教程网3862021-10-25
  • UbuntuUbuntu 15.04升级到Ubuntu 15.10的详细教程

    Ubuntu 15.04升级到Ubuntu 15.10的详细教程

    ubuntu15.04怎么升级到ubuntu15.10?又该升级系统了,但是很多人对ubuntu系统很不熟悉,下面我们一起来看看ubuntu15.04升级ubuntu15.10的详细教程,需要的朋友可以...

    服务器之家4562019-07-02
  • UbuntuWSL、WSL2与Ubuntu性能大PK

    WSL、WSL2与Ubuntu性能大PK

    科技媒体 Phoronix 对 Windows 10 May 2020 中 WSL 和 WSL 2 的性能进行了测试,参与测试的发行版为 Ubuntu 20.04 on WSL/WSL2 ,以及 Ubuntu 20.04 LTS,均被安装在除 Windows 之...

    开源中国29412020-06-23
  • UbuntuUbuntu20.04开启root账户的方法步骤

    Ubuntu20.04开启root账户的方法步骤

    这篇文章主要介绍了Ubuntu20.04开启root账户的方法步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们...

    缀梦13002020-08-01
  • UbuntuUbuntu Gnome下如何修改应用图标icon?

    Ubuntu Gnome下如何修改应用图标icon?

    最近有些朋友问小编Ubuntu Gnome下如何修改应用图标icon?今天小编要为大家分享的是Ubuntu Gnome下修改应用图标icon的方法;有需要的朋友一起去看看吧...

    服务器之家6412019-06-01