系統環境:CentOS Linux release 7.5.1804 (Core)
軟件版本:Mysql 5.7.24
Nginx 1.14.0
PHP7.1.23 擴展(redis,igbinary,inotify,swoole)
redis-5.0.0
一、安裝 mysql 5.7.24
安裝YUM Repo,由於CentOS 的yum源中沒有mysql,需要到mysql的官網下載yum repo配置文件:
yum install wget vim -y
wget https://dev.mysql.com/get/mysql57-community-release-el7-9.noarch.rpm
然後進行repo的安裝:
rpm -ivh mysql57-community-release-el7-9.noarch.rpm
執行完成後會在/etc/yum.repos.d/目錄下生成兩個repo文件mysql-community.repo mysql-community-source.repo
開始安裝MySQL使用yum命令即可完成安裝
yum install mysql-server –y
啓動msyql:
systemctl start mysqld
獲取安裝時的臨時密碼:
grep 'temporary password' /var/log/mysqld.log
用查到的密碼登錄:
mysql -u root -p
登錄成功後修改密碼:
set global validate_password_policy=0;
set password=password("52Wangdun");
配置默認編碼爲utf8:
vim /etc/my.cnf #添加
[mysqld]
character_set_server=utf8
init_connect='SET NAMES utf8'
其他命令:
mysql_secure_installation #設置安全選項
systemctl stop mysqld #關閉MySQL
systemctl restart mysqld #重啓MySQL
systemctl status mysqld #查看MySQL運行狀態
systemctl enable mysqld #設置開機啓動
systemctl disable mysqld #關閉開機啓動
默認配置文件路徑:
配置文件:/etc/my.cnf
日誌文件:/var/log/mysqld.log
服務啓動腳本:/usr/lib/systemd/system/mysqld.service
socket文件:/var/run/mysqld/mysqld.pid
二、安裝nginx 1.14.0
編譯安裝前所需要的準備:安裝GCC編譯器 PCRE庫 zlib庫 OpenSSL庫
yum install -y gcc pcre pcre-devel zlib zlib-devel openssl openssl-devel
下載安裝包
wget http://nginx.org/download/nginx-1.14.0.tar.gz
解壓安裝
tar -zxvf nginx-1.14.0.tar.gz
cd nginx-1.14.0/
./configure --prefix=/usr/local/nginx --pid-path=/run/nginx.pid --error-log-path=/var/log/nginx/error.log --http-log-path=/var/log/nginx/access.log --with-http_ssl_module --with-http_v2_module --with-http_stub_status_module --with-pcre
編譯安裝
make & make install
防火牆增加80端口
firewall-cmd --zone=public --add-port=80/tcp --permanent
防火牆配置生效
firewall-cmd –reload
訪問網頁
設置ngnix開機自啓,即在rc.local增加啓動代碼就可以了
vim /etc/rc.local 增加一行
/usr/local/nginx/sbin/nginx
設置執行權限:
chmod 755 /etc/rc.local
附(Nginx部分控制命令):默認Nginx安裝在/usr/local/nginx/中,因此
/usr/local/nginx/sbin/nginx #默認啓動start
/usr/local/nginx/sbin/nginx -t #測試配置信息
/usr/local/nginx/sbin/nginx -s stop #快速停止服務
/usr/local/nginx/sbin/nginx -s quit #正常停止服務
/usr/local/nginx/sbin/nginx -s reload #重啓
三、安裝PHP7.1.23
編譯安裝前所需要的準備
yum -y install libxml2 libxml2-devel openssl openssl-devel curl-devel libjpeg-devel libpng-devel freetype-devel libmcrypt-devel libxslt libxslt-devel
安裝過程中發現無法安裝libmcrypt擴展需要安裝第三方yum源
wget http://www.atomicorp.com/installers/atomic
sh ./atomic (默認回車就行)
安裝所依賴的包
yum install php-mcrypt -y
yum install libmcrypt -y
yum install libmcrypt-devel -y
yum install bzip2-devel -y
yum install gmp-devel -y
yum install readline-devel –y
yum install psmisc –y
下載安裝包
wget -O php-7.1.23.tar.gz http://am1.php.net/get/php-7.1.23.tar.gz/from/this/mirror
解壓
tar zxvf php-7.1.23.tar.gz
進入目錄
cd php-7.1.23
./configure \
--prefix=/usr/local/php \
--with-config-file-path=/etc \
--enable-fpm \
--with-fpm-user=www-data \
--with-fpm-group=www-data \
--enable-inline-optimization \
--disable-debug \
--disable-rpath \
--enable-shared \
--enable-soap \
--with-libxml-dir \
--with-xmlrpc \
--with-openssl \
--with-mcrypt \
--with-mhash \
--with-pcre-regex \
--with-sqlite3 \
--with-zlib \
--enable-bcmath \
--with-iconv \
--with-bz2 \
--enable-calendar \
--with-curl \
--with-cdb \
--enable-dom \
--enable-exif \
--enable-fileinfo \
--enable-filter \
--with-pcre-dir \
--enable-ftp \
--with-gd \
--with-openssl-dir \
--with-jpeg-dir \
--with-png-dir \
--with-zlib-dir \
--with-freetype-dir \
--enable-gd-native-ttf \
--enable-gd-jis-conv \
--with-gettext \
--with-gmp \
--with-mhash \
--enable-json \
--enable-mbstring \
--enable-mbregex \
--enable-mbregex-backtrack \
--with-libmbfl \
--with-onig \
--enable-pdo \
--with-mysqli=mysqlnd \
--with-pdo-mysql=mysqlnd \
--with-zlib-dir \
--with-pdo-sqlite \
--with-readline \
--enable-session \
--enable-shmop \
--enable-simplexml \
--enable-sockets \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-wddx \
--with-libxml-dir \
--with-xsl \
--enable-zip \
--enable-mysqlnd-compression-support \
--with-pear \
--enable-opcache
正式安裝
make && make install
配置php環境變量
vim /etc/profile 在末尾加上
PATH=$PATH:/usr/local/php/bin
export PATH
保存後使之立即生效
source /etc/profile
查看PHP版本
php -v
附(PHP部分控制命令)
/usr/local/php/sbin/php-fpm #啓動
killall php-fpm #關閉
四、配置nginx支持php-fpm
創建web用戶,組都設置爲www-data
groupadd www-data
useradd -g www-data www-data
複製一份php-fpm配置文件
cd /usr/local/php/etc
cp php-fpm.conf.default php-fpm.conf
打開配置文件
vim php-fpm.conf
發現最後一行引入php-fpm.d目錄下所有 .conf 類型的配置文件
打開 php-fpm.d目錄,複製默認配置文件並打開修改
cd php-fpm.d
cp www.conf.default www.conf
vim www.conf 修改用戶和用戶組爲www-data用戶
保存退出,重啓php-fpm服務
killall php-fpm
/usr/local/php/sbin/php-fpm
php-fpm默認使用9000端口,使用如下命令查看啓動狀態
netstat -lnt | grep 9000
nginx相關配置打開nginx配置文件
vim /usr/local/nginx/conf/nginx.conf
修改用戶組第一行註釋去掉 nobody改爲www-data
添加index.php,使nginx默認使用index.php爲入口頁
配置php-fpm模塊,修改第69行的/scripts 爲 $document_root
以上都修改後保存退出,先檢測相關配置是否正確
/usr/local/nginx/sbin/nginx –t
顯示正確,重啓nginx
/usr/local/nginx/sbin/nginx -s reload
切到nginx下的html目錄(默認代碼目錄)新建index.php
<?php
phpinfo();
?>
測試訪問對應地址是否可以運行
http://58.53.128.101/index.php
看到這界面說明php成功運行。
五、安裝redis-5.0.0
下載redis-5.0.0安裝包
wget http://download.redis.io/releases/redis-5.0.0.tar.gz
解壓
tar -zxvf redis-5.0.0.tar.gz
cd redis-5.0.0
編譯安裝
make
切換至redis的src目錄
cd src
cp redis-server redis-cli /usr/local/bin
cp redis-sentinel redis-benchmark redis-check-aof redis-check-dump /usr/local/bin
創建配置目錄
mkdir /etc/redis
mkdir -p /var/lib/redis/6379
cp /root/redis-5.0.0/redis.conf /etc/redis/6379.conf
vim /etc/redis/6379.conf
daemonize yes
pidfile /var/run/redis_6379.pid
port 6379
oglevel notice
dir /var/lib/redis/6379
創建服務
sysctl -w vm.overcommit_memory=1
sysctl -w net.core.somaxconn=512.
echo never > /sys/kernel/mm/transparent_hugepage/enabled
cp /root/redis-5.0.0/utils/redis_init_script /etc/init.d/redis_6379
vim /etc/systemd/system/redis.service 內容如下
[Unit]
Description=Redis on port 6379
[Service]
Type=forking
ExecStart=/etc/init.d/redis_6379 start
ExecStop=/etc/init.d/redis_6379 stop
[Install]
WantedBy=multi-user.target
啓動服務
systemctl enable redis
systemctl daemon-reload
systemctl start redis
systemctl status redis
六、php7安裝redis擴展
下載包
wget https://codeload.github.com/phpredis/phpredis/zip/develop
mv develop phpredis-develop.zip
unzip phpredis-develop.zip
cd phpredis-develop
生成configure配置文件:
/usr/local/php/bin/phpize
編譯安裝:
./configure --with-php-config=/usr/local/php/bin/php-config
make && make install
配置/etc/php.ini 添加
extension=redis.so
重啓php
killall php-fpm
/usr/local/php/sbin/php-fpm
訪問http://58.53.128.101/index.php,查找Redis
七、php7安裝inotify擴展
pecl install inotify
配置/etc/php.ini 添加
extension=inotify.so
重啓php
killall php-fpm
/usr/local/php/sbin/php-fpm
訪問http://58.53.128.101/index.php,查找inotify
八、php7安裝igbinary擴展
pecl install igbinary
配置/etc/php.ini 添加
extension=igbinary.so
重啓php
killall php-fpm
/usr/local/php/sbin/php-fpm
訪問http://58.53.128.101/index.php,查找igbinary
九、php7安裝swoole擴展
下載安裝包
wget https://codeload.github.com/swoole/swoole-src/tar.gz/v4.2.6
tar -zxvf v4.2.6
cd swoole-src-4.2.6/
生成configure配置文件:
/usr/local/php/bin/phpize
編譯安裝
./configure --enable-async-mysql
make
make install
配置/etc/php.ini 添加
extension= swoole.so
重啓php
killall php-fpm
/usr/local/php/sbin/php-fpm
訪問http://58.53.128.101/index.php,查找swoole.so