yum安裝centos7 lnmp環境以及svn,redis,swoole擴展

環境安裝 centos7

查看CentOS的版本號:

cat /etc/centos-release
#CentOS release 6.10 (Final)
uname -a
#Linux VM_16_5_centos 2.6.32-754.10.1.el6.x86_64 #1 SMP Tue Jan 15 17:07:28 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux

df -h #查看磁盤容量

Nginx

官方文檔 http://nginx.org/en/linux_packages.html
1.更新yum      							yum update -y
2.安裝epel-release源 (大部分已經自動安裝)	yum install -y epel-release
3.設置Nginx安裝源						  vim /etc/yum.repos.d/nginx.repo
    [nginx]
    name=nginx repo
    baseurl=http://nginx.org/packages/centos/7/$basearch/
    gpgcheck=0
    enabled=1
    #直接拖文件夾上去
4.安裝nginx			yum install -y nginx
5.查看nginx版本,啓動nginx,設置開機自啓動 
	nginx -v
	## nginx version: nginx/1.14.1 
	systemctl enable nginx 
	systemctl nginx start
6. 檢查Nginx配置是否有誤
	nginx -t -c /etc/nginx/nginx.conf 

Linux 添加Nginx 到 service 啓動

第一步:

編寫nginx文件,放入/etc/init.d/

nginx文件內容如下 在工具裏面直接編輯否則會報錯,需要修改文件格式[直接拖文件]

#!/bin/bash

# nginx Startup script for the Nginx HTTP Server

# it is v.0.0.2 version.

# chkconfig: - 85 15

# description: Nginx is a high-performance web and proxy server.

#              It has a lot of features, but it's not for everyone.

# processname: nginx

# pidfile: /var/run/nginx.pid

# config: /usr/local/nginx/conf/nginx.conf

nginxd=/usr/sbin/nginx  #nginx實際安裝路徑

nginx_config=/etc/nginx/nginx.conf #nginx實際安裝路徑

nginx_pid=/var/run/nginx.pid

RETVAL=0

prog="nginx"

# Source function library.

. /etc/rc.d/init.d/functions

# Source networking configuration.

. /etc/sysconfig/network

# Check that networking is up.

[ ${NETWORKING} = "no" ] && exit 0

[ -x $nginxd ] || exit 0

# Start nginx daemons functions.

start() {

if [ -e $nginx_pid ];then

   echo "nginx already running...."

   exit 1

fi

   echo -n $"Starting $prog: "

   daemon $nginxd -c ${nginx_config}

   RETVAL=$?

   echo

   [ $RETVAL = 0 ] && touch /var/lock/subsys/nginx

   return $RETVAL

}

# Stop nginx daemons functions.

stop() {

        echo -n $"Stopping $prog: "

        killproc $nginxd

        RETVAL=$?

        echo

        [ $RETVAL = 0 ] && rm -f /var/lock/subsys/nginx /var/run/nginx.pid

}

# reload nginx service functions.

reload() {

    echo -n $"Reloading $prog: "

    #kill -HUP `cat ${nginx_pid}`

    killproc $nginxd -HUP

    RETVAL=$?

    echo

}

# See how we were called.

case "$1" in

start)

        start

        ;;

stop)

        stop

        ;;

reload)

        reload

        ;;

restart)

        stop

        start

        ;;

status)

        status $prog

        RETVAL=$?

        ;;

*)

        echo $"Usage: $prog {start|stop|restart|reload|status|help}"

        exit 1

esac

exit $RETVAL
第二步:
chkconfig --add /etc/init.d/nginx    
chmod 755 /etc/init.d/nginx
chkconfig --add nginx
如果想隨系統啓動就執行:
/sbin/chkconfig --level 345 nginx on
第三步:

nginx啓動、停止、無間斷服務重啓,可選 start | stop | restart | reload | status | help

service nginx start

service nginx stop

service nginx reload

MySQL

方式一[當前5.7版本]
#第一步 配置yum源:
#在MySQL官網中下載YUM源rpm安裝包:http://dev.mysql.com/downloads/repo/yum/ 
# 下載mysql源安裝包
shell> wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm 
#第二步 安裝mysql源
shell> yum localinstall mysql57-community-release-el7-8.noarch.rpm


方式二 [版本自選,注意系統版本是6/7]
#安裝 最新 mysql yum 源
 centos 6 :rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el6-2.noarch.rpm 
 centos 7 :rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-2.noarch.rpm
###vi /etc/yum.repos.d/mysql-community.repo 選擇版本(備選)
1.2 選擇版本 開啓
# Enable to use MySQL 5.5
[mysql55-community]
name=MySQL 5.5 Community Server
baseurl=http://repo.mysql.com/yum/mysql-5.5-community/el/6/$basearch/
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-mysql

#第二步 安裝MySQL
yum install mysql-community-server  
第三步 啓動MySQL服務
#檢查mysql源是否安裝成功
shell> yum repolist enabled | grep "mysql.*-community.*"

systemctl start mysqld
#查看MySQL的啓動狀態
systemctl status mysqld
● mysqld.service - MySQL Server
   Loaded: loaded (/usr/lib/systemd/system/mysqld.service; disabled; vendor preset: disabled)
   Active: active (running) since 五 2016-06-24 04:37:37 CST; 35min ago
 Main PID: 2888 (mysqld)
   CGroup: /system.slice/mysqld.service
           └─2888 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid

6月 24 04:37:36 localhost.localdomain systemd[1]: Starting MySQL Server...
6月 24 04:37:37 localhost.localdomain systemd[1]: Started MySQL Server.
第四步 開機啓動
systemctl enable mysqld
systemctl daemon-reload

第五步 修改root默認密碼【改完重啓MySQL】
mysql -uroot -p
use mysql;
#低版本 服務器直接運行 以下命令
/usr/bin/mysqladmin -u root password 1233242;


UPDATE user SET Password = password ('123435') WHERE User = 'root' ;


#5.5版本以上 mysql 運行 以下命令
ALTER USER 'root'@'localhost' IDENTIFIED BY '12313242234';
#添加遠程登錄賬戶
GRANT ALL PRIVILEGES ON *.* TO 'xueyang'@'%' IDENTIFIED BY '1232423' WITH GRANT OPTION;
#/etc/my.cnf 添加
sql_mode=STRICT_TRANS_TABLES,ERROR_FOR_DIVISION_BY_ZERO,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION
explicit_defaults_for_timestamp=1
max_connections=3600

PHP Centos下Yum安裝PHP5.5,5.6,7.0

1.檢查當前安裝的PHP包

yum list installed | grep php
#如果有安裝的PHP包,先刪除他們

yum remove php.x86_64 php-cli.x86_64 php-common.x86_64 php-gd.x86_64 php-ldap.x86_64 php-mbstring.x86_64 php-mcrypt.x86_64 php-mysql.x86_64 php-pdo.x86_64

**2.Centos **

Centos 5.X:
rpm -Uvh http://mirror.webtatic.com/yum/el5/latest.rpm CentOs 
Centos 6.x :
rpm -Uvh http://mirror.webtatic.com/yum/el6/latest.rpm CentOs 
Centos 7.X :
rpm -Uvh  https://mirror.webtatic.com/yum/el7/epel-release.rpm 
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm
#如果想刪除上面安裝的包,重新安裝
rpm -qa | grep webstatic rpm -e  上面搜索到的包即可

3.運行yum install

yum install php55w.x86_64 php55w-cli.x86_64 php55w-common.x86_64 php55w-gd.x86_64 php55w-ldap.x86_64 php55w-mbstring.x86_64 php55w-mcrypt.x86_64 php55w-mysql.x86_64 php55w-pdo.x86_64 php55w-dom.x86_64 php55w-devel.x86_64  --skip-broken 

yum install php56w.x86_64 php56w-cli.x86_64 php56w-common.x86_64 php56w-gd.x86_64 php56w-ldap.x86_64 php56w-mbstring.x86_64 php56w-mcrypt.x86_64 php56w-mysql.x86_64 php56w-pdo.x86_64 php56w-dom.x86_64 php56w-devel.x86_64

yum install php70w.x86_64 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-mysql.x86_64 php70w-pdo.x86_64 php56w-dom.x86_64 php70w-devel.x86_64
#注:如果想升級到5.6把上面的55w換成56w就可以了。

4.安裝PHP FPM

yum install php55w-fpm  
yum install php56w-fpm  
yum install php70w-fpm
 
#yum安裝基本庫
yum -y install automake autoconf libtool make gcc gcc-c++ libmcrypt-devel mhash-devel libxslt-devel 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 e2fsprogs e2fsprogs-devel krb5 krb5-devel libidn libidn-devel openssl openssl-devel 

yum install -y libxml2-devel openssl-devel libcurl-devel libjpeg-devel libpng-devel libicu-devel openldap-devel freetype freetype-devel


安裝redis擴展
1 安裝phpize
yum install php-devel   --skip-broken 
#報錯Error: php55w-common conflicts with php-common-5.4.16-46.el7.x86_64
 #You could try using --skip-broken to work around the problem
# You could try running: rpm -Va --nofiles --nodigest
執行 yum install php55w-devel
2 下載擴展源碼包,直接用wget
#wget下載github上的文件  
wget https://github.com/nicolasff/phpredis/archive/master.zip  
or 
3 如果沒裝unzip,需要先安裝unzip
yum install unzip 
4 解壓master.zip
unzip master.zip
5 解壓目錄爲phpredis-master,進入!!!該文件夾,開始編譯php擴展
phpize
6 配置環境
./configure  
7 編譯
make && make install 
編譯完成後顯示:
Build complete.  
Don't forget to run 'make test'.  
Installing shared extensions:     /usr/lib64/php/modules/ 
進入/usr/lib64/php/modules/文件夾,發現redis.so的擴展
8 使redis擴展生效
vim /etc/php.ini,添加下面的擴展
extension=redis.so 
or
 vim /etc/php.d/redis.ini
 #內容:
;ble redis extension module
extension=redis.so

9 重啓服務器
service php-fpm restart

安裝swoole擴展
1 前提需要安裝:
yum install php55w-process 
  
2 下載擴展源碼包,直接用wget
#wget下載github上的文件  
wget -c http://pecl.php.net/get/swoole-4.2.12.tgz

3 如果沒裝unzip,需要先安裝unzip
yum install unzip 
4 解壓swoole-4.2.12.tgz
tar xzvf swoole-4.2.12.tgz
5 解壓目錄爲swoole-4.2.12,進入該文件夾,開始編譯php擴展
phpize
6 配置環境
./configure  
7 編譯
make && make install 
編譯完成後顯示:
Build complete.  
Don't forget to run 'make test'.  
Installing shared extensions:     /usr/lib64/php/modules/ 
進入/usr/lib64/php/modules/文件夾,發現swoole.so的擴展
8 使swoole擴展生效
修改/etc/php.ini,添加下面的擴展
extension=swoole.so 
or
 vim /etc/php.d/swoole.ini
 #內容:
;ble swoole extension module
extension=swoole.so

9 重啓服務器
service php-fpm restart
php -m

查看:
  ps -ef | grep lzm_*   
後臺運行:cd /home/www/ltzs/crontable/
	php start.php -s start --worker --checktime false -m -d   //218 實例
查看:
  ps -ef | grep lzm_* 

安裝svn

1.yum install subversion,通過yum安裝svn服務
2.svnserve --version,查看是否安裝成功
3.創建svn倉庫目錄和對應代碼目錄
	mkdir -p /home/svn/game 
	mkdir -p /home/www/game
4.通過svn命令創建自己得svn同步庫,並查看是否創建成功
	svnadmin create /home/svn/game  
5.分別修改三個配置文件
authz爲訪問權限配置,passwd爲訪問用戶密碼配置,svnserve.conf爲該庫得svn其他相關配置。
***注意:修改配置文件時,所有的元素需要頂格填寫,不能出現空格,否則會出現連接不上等問題。
chmod -R 755 post-commit
6.啓動svn:
svnserve -d -r /home/svn 
7.關閉:
killall svnserve 
資源路徑 : svn://IP/game

第一次 同步 需要手動同步 
svn co svn://IP/game /home/www/game

啓動和端口策略

啓動:
service redis restart
service nginx restart
service mysqld restart
service php-fpm restart
service svnserve restart

iptables 策略
方式一
iptables -I INPUT 5 -p tcp --dport 3690 -j ACCEPT
iptables -I INPUT 5 -p tcp --dport 6379 -j ACCEPT
iptables -I INPUT 5 -p tcp --dport 80 -j ACCEPT
iptables -I INPUT 5 -p tcp --dport 3306 -j ACCEPT
iptables -I INPUT 5 -p tcp --dport 9000 -j ACCEPT
iptables -I INPUT 5 -p tcp --dport 3690 -j ACCEPT
iptables -I INPUT 5 -p tcp --dport 443 -j ACCEPT
方式二
firewall-cmd --zone=public --add-port=3690/tcp --permanent
firewall-cmd --zone=public --add-port=6379/tcp --permanent
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --zone=public --add-port=9000/tcp --permanent
firewall-cmd --zone=public --add-port=80/tcp --permanent  
firewall-cmd --zone=public --add-port=443/tcp --permanent  

開機啓動:
chkconfig --list

chkconfig redis on				 systemctl enable redis.service
chkconfig nginx on			或者 systemctl enable nginx.service
chkconfig mysqld on				 systemctl enable mysqld.service	
chkconfig php-fpm on			 systemctl enable php-fpm.service	
chkconfig svnd on				 systemctl enable svnserve.service

注意事項:
一、關閉 sxlinux

注意 修改 nginx根目錄出現不能訪問的問題:

文件夾權限沒有問題,關閉 setenforce 0

打開 selinux 配置文件

[root@localhost ~]# vim /etc/selinux/config

二、修改緩存目錄權限

chmod -R 777 /var/lib/php/session 【必做】

發佈了21 篇原創文章 · 獲贊 4 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章