一直以来都没有养成记录学习的好习惯,我想从这么一天开始,把自己学习和工作中的经验和坑都记录下来。等到以后老的时候还有可以回忆的地方。

最近在学习linux,虽然已经玩linux很久了,但是没有怎么用心去学。这次我决定把自己在linux的学习之路记录下来。

Linux下安装 Nginx+PHP+MySql
1.nginx 的安装
 安装nginx首先需要编译环境的gcc g++ 等开发库已经安装好。
  1. 首先执行一下命令 保证gcc g++ 完整安装
    yum
    -y install gcc gcc-c++ autoconf libjpeg libjpeg-devel libpng
    libpng-devel freetype freetype-devel libxml2 libxml2-devel zlib
    zlib-devel glibc glibc-devel glib2 glib2-devel bzip2 bzip2-devel ncurses
    ncurses-devel curl curl-devel ssse2fsprogs e2fsprogs-devel krb5
    krb5-devel libidn libidn-devel openssl openssl-devel openldap
    openldap-devel nss_ldap openldap-clients openldap-servers
  2. yum install nginx -y
  3. 启动nginx   
    sudo systemctl start nginx
  4. 设置开机启动
    sudo systemctl enable nginx
  5. 启动了nginx 后 可以在内网访问http://localhost 可以看到如下显示则说明nginx已经成功安装
  6. 如果要通过外网访问 还需要 打开80 端口 
    /sbin/iptables -I INPUT -p tcp --dport 80 -j ACCEPT
    这个时候 我们就可以通过外网访问了

2.安装php

  1. 要让 nginx 能够执行 php 文件,需要去安装一下 php-fpm,我要安装的是比较新的 PHP 7 ,这个软件包可以在 IUS 仓库里找到,所以你需要先安装 IUS 仓库。

    sudo yum install php70u-fpm -y
  2. 启动php-fpm
    sudo systemctl start php-fpm
  3. 将php-fpm添加到开机启动
    sudo systemctl enable php-fpm
  4. 这一部分只是安装了php-fpm 然而还需要安装些许php的扩展这样才能保证你的php支持json,mysql等
    sudo yum install php70u-gd  php70u-mysqlnd php70u-pdo php70u-mcrypt php70u-mbstring php70u-json php70u-opcache php70u-xml -y如果上一步出现了  
  5. 请执行
    yum provides '*/applydeltarpm' 和 yun install deltarrpm 
  6. 重新加载php-fpm 
    sudo systemctl reload php-fpm
  7. 如果 YUM进行install或update出现KeyboardInterrupt错误

3.安装mysql/mariadb

  1. MySQL 与 MariaDB 是相互兼容的,现在社区推荐使用 MariaDB,所以我们可以去安装一下 MariaDB ,用它代替 MySQL
     yum install mariadb101u-server -y
  2. 启动 mysql
    sudo systemctl start mariadb
  3. 设置开机启动
    sudo systemctl enable mariadb

4.目录和文件权限

网站上面有些目录或文件需要有写入权限,这样你得为这些目录和文件分配合适的权限,一般可以把它们的拥有者设置成 php-fpm 使用的用户,查看一下谁在运行 php-fpm 这个服务:

sudo ps aux|grep php

修改所使用的用户,php-fpm 的配置文件是:/etc/php-fpm.conf,还有在 /etc/php-fpm.d/* 这个目录里的所有文件都是 php-fpm 的配置文件。默认这个目录里有一个 www.conf ,你可以编辑这个文件来修改 php-fpm 所使用的用户名称。使用 vim 命令:

vim /etc/php-fpm.d/www.conf

打开文件以后你可以搜索下关键词 user ,输入 :/user  ,会搜索到结果,按小 n 可以继续向下查找,按大 N 可以向上查找。直到你看到:

user = php-fpm

这个 php-fpm 就是运行 PHP-FPM 的用户的名字,你看到的也可能是其它的名字,这不重要。你只要知道这个用户是谁,在哪里可以修改这个用户就行了。在遇到目录写入权限的问题,比如不能正常上传网站的文件,你可以把保存上传文件的那个目录的拥有者修改成运行 PHP-FPM 的用户就可以了。

修改目录的拥有者可以使用这样的命名:

sudo chown -R 用户名 目录

这样就会把指定的目录的拥有者修改成指定的用户了。也就是如果你把目录的拥有者修改成运行 PHP-FPM 的那个用户,那么在网站上再去上传文件就不会有权限的问题了,因为目录的拥有者一般都会拥有可以写入的权限。

Linux 环境下安装 Nginx+php+mysql 开发环境的更多相关文章

  1. windows环境下安装vue+webpack的开发环境

    本人最近在学习vue,在学习的过程中遇到对的问题和解决方法 1.我们首先要安装node.js.node.js的官方地址为:https://nodejs.org/en/download/,下载完毕,按照 ...

  2. Linux centos7环境下安装Nginx

    Linux centos7环境下安装Nginx的步骤详解 1.    首先到Nginx官网下载Nginx安装包 http://nginx.org/download/nginx-1.5.9.tar.gz ...

  3. Linux和Windows环境下安装Nginx

    Nginx的安装 windows环境下安装Nginx 安装 Nginx 的下载地址如下: http://nginx.org/en/download.html 选择时尽量选择 Stable 稳定版本,点 ...

  4. Win7搭建nginx+php+mysql开发环境以及websocket聊天实例测试

    Win7搭建nginx+php+mysql开发环境以及websocket聊天实例测试一.下载相关安装包 1.下载nginx最新版本(nginx1.3.13版之后才支持websocket协议) 下载地址 ...

  5. 安装Nginx+Lua+OpenResty开发环境配置全过程实例

    安装Nginx+Lua+OpenResty开发环境配置全过程实例 OpenResty由Nginx核心加很多第三方模块组成,默认集成了Lua开发环境,使得Nginx可以作为一个Web Server使用. ...

  6. linux/centos下安装nginx(rpm安装和源码安装)详细步骤

    Centos下安装nginx rpm包                                                                                 ...

  7. Windows下安装Nginx+php+mysql环境

    系统:Windows 7 64位系统 安装之前,首先下载软件: Nginx: http://nginx.org/en/download.html PHP Stable PHP 5.6.26: http ...

  8. (4)Linux(ubuntu)下配置Opencv3.1.0开发环境的详细步骤

    Ubuntu下配置opencv3.1.0开发环境 1.最近工作上用到在Ubuntu下基于QT和opencv库开发应用软件(计算机视觉处理方面),特把opencv的配置过程详细记录,以供分享 2.步骤说 ...

  9. linux下安装nginx+php+mysql环境 详细教程

    话不多说上代码 linux环境:centos 7.0 64位 nginx:nginx-1.8.0.tar.gz php: php-7.1.1.tar.gz mysql: mysql-5.6.21.ta ...

随机推荐

  1. python之yield和Generator

    首先我们从一个小程序导入,各定一个list,找出其中的素数,我们会这样写 import math def is_Prims(number): if number == 2: return True / ...

  2. 动态链接库的ELF头分析

    ELF(Executable and Linking Format)用于存储Linux程序. ELF文件分三种类型: 1.目标文件(通常是.o); 2.可执行文件(我们的运行文件)   3.动态库(. ...

  3. 使用cygwin注意事项二

    使用cygwin时,一定要区分当前运行的是cygwin下的进程还是windows下的进程,如:使用vim, 假如cygwin下没安装vim, windows下安装了,那么你运行的就是windows下的 ...

  4. rkhunter和chkrootkit

    今天继续检查我的Linux,所以下来rkhunter和chkrootkit一个一个来,下面只记录命令,少些说明不截图了. 1.rkhunter #cd /temp #wget http://downl ...

  5. Tutte矩阵求一般图最大匹配

    [集训队2017论文集] 一张无向图的Tutte矩阵为 其中xi,j为一个random的值. Tutte矩阵的秩(一定为偶数)/2 就是这张图的最大匹配. 原理大概就是: 一个图有完美匹配,则det( ...

  6. poj2828 Buy Tickets——倒序处理

    题目:http://poj.org/problem?id=2828 这题可以倒序来做,因为越靠后的人实际上优先级越高: 用0和1表示这个位置上是否已经有人,0表示有,1表示没有,这样树状数组维护前缀和 ...

  7. rsync应用实例

      一. 通过ssh的方式 前面介绍的rsync 5种方式当中,第二.第三(1个冒号)就属于通过ssh的方式,这种方式其实就是让用户去登录到远程机器,然后执行rsync的任务. [root@local ...

  8. 微信公众平台:微信JS-SDK Demo

    ylbtech-微信公众平台:微信JS-SDK Demo 1. HTML返回顶部 1.demo.html <!DOCTYPE html> <html> <head> ...

  9. CCF 201512-1 数位之和 (水题)

    问题描述 给定一个十进制整数n,输出n的各位数字之和. 输入格式 输入一个整数n. 输出格式 输出一个整数,表示答案. 样例输入 20151220 样例输出 13 样例说明 20151220的各位数字 ...

  10. Bootstrap表格添加搜索栏

    在学习了表格的分页后,本文尝试在表格顶部加入搜索栏,用来筛选表格的数据,先看一下效果: 未进行搜索时,有394条记录: 在输入乘车码“1”和订单号“20150120”后,只有28条记录: 此处使用了两 ...