zoukankan      html  css  js  c++  java
  • CentOS7上安装并配置Nginx、PHP、MySql

     一、Nginx

     1、安装nginx

    yum install nginx

    2、启动nginx

    systemctl start nginx

    除了systemctl start nginx之外,常用的相关命令还有systemctl stop nginxsystemctl restart nginxsystemctl status nginx

    3、测试nginx是否安装成功

        浏览器输入ip地址或者域名(已经解析过的域名),如下图所示,则安装成功。

    4,配置Nginx支持PHP解析

         编辑/etc/nginx/nginx.conf,蓝色字体处为新加内容

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

            # Load configuration files for the default server block.
            include /etc/nginx/default.d/*.conf;

            location / {
            }

            error_page 404 /404.html;
                location = /40x.html {
            }

            error_page 500 502 503 504 /50x.html;
                location = /50x.html {
            }
            location ~ .php$ {
            try_files $uri =404;
            root /usr/share/nginx/html;
            fastcgi_pass 127.0.0.1:9000;
            fastcgi_index index.php;
            fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
            include fastcgi.conf;
    }

    }

    二、PHP

    1,安装PHP

    yum install php php-mysql php-fpm

    安装过程中经常会见到如下问题:
    2:postfix-2.10.1-6.el7.x86_64 有缺少的需求 libmysqlclient.so.18()(64bit)
    2:postfix-2.10.1-6.el7.x86_64 有缺少的需求 libmysqlclient.so.18(libmysqlclient_18)(64bit)
    解决方法:
    把php-mysql换成php-mysqlnd
    即执行

    yum install php php-mysqlnd php-fpm

    2、编辑PHP的配置文件,/etc/php.ini,注意去掉分号注释

    vim /etc/php.ini

       将 ;cgi.fix_pathinfo=1 改为 cgi.fix_pathinfo=0

    3、编辑PHP-FPM配置文件

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

     将
     user = nobody
     group = nobody   

     改为
     user = nginx
     group = nginx
     前提是已经创建了nginx用户和nginx组。如果没有创建方法:

    1 groupadd -r nginx
    2 useradd -r -g nginx nginx

    4、启动PHP—FPM

    systemctl start php-fpm

    5、设置开机启动

    systemctl enable php-fpm

    6,确保Nginx配置文件修该之后,重启Nginx

    systemctl restart nginx

    7、在/usr/share/nginx/html/目录下创建phpinfo.php

        内容如下:

       <?php phpinfo();?>

       查看php进程:ps aux | grep php  查看端口占用:netstat -ano|grep 80

    8、浏览器上输入ip/phpinfo.php,如果出现如下界面,说明PHP和Nginx均安装和配置成功。

        

     三、MySql

    CentOS 7的yum源中貌似没有正常安装mysql时的mysql-sever文件,需要去官网上下载

    1、补充yum源(1)

    wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm

    2、补充yum源(2)

    rpm -ivh mysql-community-release-el7-5.noarch.rpm

    3、安装mysql

    yum install mysql-community-server

    4、成功安装之后重启mysql服务

    systemctl start mysqld

    初次安装mysql是root账户是没有密码的
    设置密码的方法

    1 mysql -uroot
    2 mysql> set password for ‘root’@‘localhost’ = password('mypasswd');
    3 mysql> exit

    mysql -u root -p

    输入密码之后,错误提示如下:ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES),意思是root的密码不正确。

    解决办法如下:
    a.sudo mysqld_safe --user=root --skip-grant-tables --skip-networking &
    输入命令之后,如果提示信息为:
    mysqld_safe A mysqld process already exists
     
    表示mysqld_safe进程存在,可以通过
    ps -A|grep mysql 查看mysqld_safe进程ID
    kill -9 -xxxx            终结ID为xxxx的进程

  • 相关阅读:
    分布式与集群的区别是什么?
    Java NIO:IO与NIO的区别 JAVA BIO与NIO、AIO的区别
    localStorage使用总结 JS 详解 Cookie、 LocalStorage 与 SessionStorage
    tomcat+nginx+redis实现均衡负载、session共享 存储过程的优缺点 HTTP、TCP、IP协议常见面试题
    高并发下的Java数据结构(List、Set、Map)
    [剑指offer] 31. 整数中1出现的次数(从1到n整数中1出现的次数)
    [剑指offer] 30. 连续子数组的最大和
    [剑指offer] 29. 最小的K个数
    [剑指offer] 28. 数组中出现次数超过一半的数字
    [leetcode] 51. N-Queens (递归)
  • 原文地址:https://www.cnblogs.com/peteremperor/p/6740725.html
Copyright © 2011-2022 走看看