轉載:centos7 安裝php7+mysql5.7+nginx+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.開始簡單的配置
新增執行目錄
mkdir -p /var/run/mysqld/ chown mysql.mysql /var/run/mysqld/
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 [email protected] identified by 'tyzZ001!'
如果密碼太過於簡單可能不然修改因為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, lowercase/uppercase, 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 admin.com www.admin.com; # 域名 root /home/www/web/newomcat/admin; # 網站根目錄 index index.php index.html index.htm;#預設的index # 建議放內網 # allow 192.168.0.0/24; # deny all; location / { if (!-e $request_filename) { rewrite ^/(.*)$ /index.php?$1 last;#去除url中的index.php 不需要可以不寫 } } location ~ \.php$ { try_files $uri = 404; fastcgi_pass 127.0.0.1:9000; fastcgi_index index.php; fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name; include fastcgi_params; } }
這樣 簡單的lnmp就安裝好了
systemctl restart php-fpm #啟動php systemctl restart nginx #啟動nginx systemctl restart mysqld #啟動mysql
6安裝redis
下載原始碼包:
wget http://download.redis.io/releases/redis-3.2.5.tar.gz
或者使用yum安裝也可以
yum install redis
解壓下載好的遠嗎包:
tar -zxf redis-3.2.5.tar.gz
進入解壓後的資料夾
cd redis-3.2.5
make編譯安裝
make
安裝完成後 在目錄下會有一個 src目錄裡面放的是 redis的命令 當前目錄下會有一個redis.conf 這個是 redis的配置檔案 我們需要對他們進行處理一下放別以後的使用
建立兩個目錄
mkdir -p /usr/local/redis/bin 命令目錄 mkdir -p /usr/local/redis/etc 配置檔案目錄
將配置檔案移動到/usr/local/redis/ext 目錄 將 src下的mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-sentinel redis-server redis-trib.rb 這個幾個檔案移動到/usr/local/redis/bin這個目錄
mv ./redis.conf /usr/local/redis/etc/ mv mkreleasehdr.sh redis-benchmark redis-check-aof redis-check-rdb redis-cli redis-sentinel redis-server redis-trib.rb /usr/local/redis/bin/
開啟 /usr/local/redis/etc/redis.conf 檔案 修改配置 讓redis在啟動時在後臺執行
找到這一項 改為 yes 原來為 no
最後將其註冊為系統服務
在/etc/init.d/目錄下建立redis 檔案
vim /etc/init.d/redis
寫入內容
########################### #!/bin/sh #chkconfig: 2345 10 90 #description:auto_run PATH=/usr/local/bin:/sbin:/usr/bin:/bin REDISPORT=6379 EXEC=/usr/local/redis/bin/redis-server REDIS_CLI=/usr/local/redis/bin/redis-cli PIDFILE=/var/run/redis_${REDISPORT}.pid CONF="/usr/local/redis/etc/redis.conf" case "$1" in start) if [ -f $PIDFILE ] then echo "$PIDFILE exists, process is already running or crashed" else echo "Starting Redis server..." $EXEC $CONF fi if [ "$?"="0" ] then echo "Redis is running..." fi ;; stop) if [ ! -f $PIDFILE ] then echo "$PIDFILE does not exist, process is not running" else PID=$(cat $PIDFILE) echo "Stopping ..." $REDIS_CLI -p $REDISPORT SHUTDOWN while [ -x ${PIDFILE} ] do echo "Waiting for Redis to shutdown ..." sleep 1 done echo "Redis stopped" fi ;; restart|force-reload) ${0} stop ${0} start ;; *) echo "Usage: /etc/init.d/redis {start|stop|restart|force-reload}" >&2 exit 1 esac ###########################
儲存退出
設定許可權
chmod +x /etc/init.d/redis
設定自動啟動:
chkconfig redis on
設定 mysql php nginx 自動啟動
systemctl enable redis systemctl enable php-fpm systemctl enable mysqld systemctl enable nginx