Centos7.0以上安装nginx+php7.0+mysql5.7+redis3作为开发php环境


CentOS 7 biuld 1611最小化安装@VMware

Redis 3.2.8


安装步骤:


#安装gcc

yum -y install gcc

#下载redis

curl -O http://download.redis.io/releases/redis-3.2.8.tar.gz

#解压

tar -zxvf redis-3.2.8.tar.gz

#转换目录

cd redis-3.2.8/deps/

#编译依赖

make geohash-int hiredis jemalloc linenoise lua

#转换目录

cd ..

#编译Redis

make && make install

#转换目录

cd utils/

#使用脚本安装服务

./install_server.sh

#启动服务

systemctl start redis_6379

systemctl status redis_6379

#好了,就这些,尝试一下吧。


简单提示:


当前版本中需要编译的依赖有五项,更早或未来的版本可能会有不同。如果您没有编译这些项目,编译Redis会遇到错误。


fatal error: jemalloc/jemalloc.h: No such file or directory

cc: error: ../deps/hiredis/libhiredis.a: No such file or directory

cc: error: ../deps/lua/src/liblua.a: No such file or directory

cc: error: ../deps/geohash-int/geohash.o: No such file or directory

cc: error: ../deps/linenoise/linenoise.o: No such file or directory


在使用脚本安装服务的过程中,您可以一路【Enter】完成安装。之后您可以再次运行脚本文件,并通过输入不同的端口号建立多个Redis服务。




1.先修改yum源 https://webtatic.com


rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm

rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm

rpm -Uvh http://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm


2.安装nginx


yum install nginx


3.安装mysql5.7


yum -y install mysql-community-server


4.安装php


yum install php70w-devel php70w.x86_64 php70w-pecl-redis php70w-cli.x86_64 php70w-common.x86_64 php70w-gd.x86_64 php70w-ldap.x86_64 php70w-mbstring.x86_64 php70w-mcrypt.x86_64 php70w-pdo.x86_64 php70w-mysqlnd php70w-fpm php70w-opcache


5.开始简单的配置


mysql 配置


vim /etc/my.cnf


在[client] 下面添加

default-character-set=utf8


在 [mysqld] 下面添加


character_set_server=utf8

init_connect='SET NAMES utf8'


collation-server=utf8_general_ci


保存退出


获取初始密码


grep 'temporary password' /var/log/mysqld.log




注意 里面包括开头的 ;号


然后登陆mysql 修改密码


alter user root@localhost identified by 'zhonghui!8'


如果密码太过于简单可能不然修改因为mysql默认设置了密码复杂度 至少8位 必须包含 大小写字母数字及符号


查看密码策略:


show variables like '%password%';


说明:


validate_password_dictionary_file:密码策略文件,策略为STRONG才需要


validate_password_length:密码最少长度


validate_password_mixed_case_count:大小写字符长度,至少1个


validate_password_number_count :数字至少1个


validate_password_special_char_count:特殊字符至少1个 上述参数是默认策略MEDIUM的密码检查规则。


validate_password_policy:密码策略,默认为MEDIUM策略 ,共有如下三种密码策略:


0 or LOW Length


1 or MEDIUM Length; numeric,lowercase/uppercase,and special characters


2 or STRONG Length; numeric,and special characters; dictionary file


可以通过 set GLOBAL validate_password_policy=0 来修改


或者修改/etc/my.cnf文件


validate_password_policy=0 #0(LOW),1(MEDIUM),2(STRONG)其中一种,注意2需要提供密码字典文件


如果不需要密码策略,添加my.cnf文件中添加如下配置禁用即可:


validate_password = off


添加一个可以在外部登陆的mysql用户


grant all privileges on *.* to 创建的用户名 @"%" identified by "密码";

flush privileges;



注意修改配置文件后需要重启mysql


配置nginx:


nginx可以的默认配置文件一般在:


/etc/nginx/nginx.conf


使用 cat 查看一下配置文件

这行表示nginx会引用 conf.d 这个文件夹下面所有.conf后缀的文件


那么在conf.d下面我们来建立我们自己的配置文件


vim /etc/nginx/conf.d/user.conf


然后写入

server {

listen 80;

server_name 192.168.88.3或者www.abc.com;

root /source/hld/bp.hldcanyin.com/public(项目目录绝对路径);

index index.php index.html index.htm;

charset utf-8;


access_log /var/log/nginx/bp.hldcanyin.com.access.log main;

error_log /var/log/nginx/bp.hldcanyin.com.error.log debug;


location / {

#try_files $uri $uri/ /index.php?_url=$uri&$args;

try_files $uri $uri/ /index.php?$query_string;

}


location ~ \.php {

# try_files $uri =404;


fastcgi_pass 127.0.0.1:9000;

fastcgi_index /index.php;


include fastcgi_params;

fastcgi_split_path_info ^(.+\.php)(/.+)$;

fastcgi_param PATH_INFO $fastcgi_path_info;

fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;

fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;

}


location ~ /\.ht {

deny all;

}

}


这样 简单的lnmp就安装好了


systemctl restart php-fpm #启动php

systemctl restart nginx #启动nginx

systemctl restart mysqld #启动mysql


nginx常见问题:使用nginx -s reload时

nginx报错 [error] open() “/usr/local/var/run/openresty.pid” failed (2: No such file or directory)


解决: 服务没有启动 使用start启动服务,因为没有start而直接使用stop或者reload报错这个问题;

如果方法一没有解决,使用方法二:-C 指定配置文件nginx.conf或者weblua.conf

相关文章

linux下开机自启: 在/etc/init.d目录下新建文件elasticsear...
1、因为在centos7中/etc/rc.d/rc.local的权限被降低了,所以...
最简单的查看方法可以使用ls -ll、ls-lh命令进行查看,当使用...
ASP.NET Core应用程序发布linux在shell中运行是正常的。可一...
设置时区(CentOS 7) 先执行命令timedatectl status|grep &...
vim /etc/sysconfig/network-scripts/ifcfg-eth0 B...