ubuntu 16.04桌面版 安装nginx+php7.0+mysql环境

发布日期 目录 Linux, 工程管理

ubuntu 16.04桌面版 安装nginx+php7.0+mysql环境

基于系统ubuntu 16.04/php7.0
修改文件时可使用ubuntu自带的gedit来打开文件,比如:sudo gedit nginx.conf

  • 更新apt源
  • 安装mysql
  • 安装nginx
  • 安装php7.0
  • 配置nginx
  • 让mysql获取php7.0支持

1.更新apt源

sudo apt update

如果有更新的先更新

sudo apt upgrate

当然这两步不做应该也是可以的。

2.安装mysql

使用ubuntu apt 软件包安装,执行命令:

sudo apt -y install mysql-server mysql-client

安装没有什么需要特别注意的,中途会询问两次root用户的密码(输入后,按下键将光标放到ok按钮上,敲回车继续。)

3.安装nginx

注意nginx与apache启服务都是在80端口 要么修改端口号 要么卸载掉apache,我这里选择卸载掉apache,卸载方法自行百度。

安装方法同数据库安装方法,执行命令:

sudo apt -y install nginx

安装完成后在浏览器输入127.0.01回车,页面出现”welcome to nginx“ 字样,说明安装成功。

通过这种方法安装nginx 启动方面有几个可用命令
sudo service nginx start 启动nginx
sudo service nginx stop 停止nginx
sudo service nginx restart 重启nginx
ps -ef | grep nginx 查看nginx启动状态

这种方式安装的nginx,安装目录在 /etc/nginx
配置文件在 /etc/nginx/nginx.conf
子层配置文件 /etc/nginx/sites-available/default
可以修改配置文件,将初始化的两个配置文件都合并到nginx.conf文件里面
注意:每次修改配置文件都需要重启nginx

4.安装php7.0

安装方法一样,执行命令:

sudo apt -y install php7.0 php7.0-fpm

至于php7.0-fpm是啥?我又不做php,我也不知道,感觉有点复杂。

5.配置nginx

nginx 的配置文件详解请自行百度

复制下面代码放到配置文件相似的位置(其实就是service{}里面):

location ~ .*\.php$ {  
    include snippets/fastcgi-php.conf;  
    fastcgi_pass unix:/run/php/php7.0-fpm.sock;
}

然后重启nginx

sudo service nginx restart

然后修改php的php.ini的配置,该文件所在目录:/etc/php/7.0/fpm/php.ini
打开文件:

sudo gedit /etc/php/7.0/fpm/php.ini

ctrl+f 搜索:cgi.fix_pathinfo=0

找到后将cgi.fix_pathinfo=0改为cgi.fix_pathinfo=1,并且该行前面的分号去掉(这里分号代表注释掉的意思)。接着保存并退出。

然后重启 php7.0-fpm:

sudo service php7.0-fpm reload

接下来找到nginx的web目录,我的在 /var/www/html/index.html(也有可能在/usr/share/nginx/index.html,看网上说的,修改对应文件确定下那个目录下才是),在该目录创建一个php文件–index.php,并复制以下内容到该文件下,以便测试php是否能启动成功:

<?php
phpinfo(); 
?>

这时回到浏览器输入 127.0.0.1/index.php 出现php版本说明成功。

注意:页面出现404说明nginx的web目录没有找对;出现502就有点麻烦了。

6.让 mysql 获得 PHP7.0支持

先搜索下php7.0支持的模块:

sudo apt-cache search php7.0

会列出支持的模块,我也是随便找些安装的 但是php7.0-mysql必须安装,可执行命令:

sudo apt-get -y install php7.0-mysql php7.0-curl php7.0-gd php7.0-intl php7.0-imap php7.0-mcrypt php7.0-pspell  php7.0-recode php7.0-sqlite3 php7.0-tidy php7.0-xmlrpc php7.0-xsl php7.0-mbstring

至此,安装完毕,可以下载个phpMyAdminc测试下环境。

这部分参考链接:
Ubuntu下安装Nginx+PHP+MySql环境

关于页面出现502的问题

我当时就出现了502问题,折腾了一上午,最后也忘了怎么弄的就好了。

思路应该就是:查看nginx错误日志,我的日志目录在/var/log/nginx/error.log,在最后一行会报错,复制错误信息到百度去查。一般错误信息都是权限拒绝这么个意思。

有说php7.0-fpm.sock权限不够,重新设定www-data用户权限。

…(忘了操作过什么了)

后来,网上说的保证nginx与php-fpm在同一用户以及同一组下,所以都设到了root用户下,好像重启了下电脑,再起php-fpm服务又会报错,提示不能在根用户下,所以又把php-fpm用户恢复到www-data用户及组,而nginx设为root用户,突然之间就好了。

参考链接:Ubuntu下安装Nginx+PHP+MySql环境

人生在于折腾,知识在于积累。

发表评论

邮箱地址不会被公开。