環境安裝 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 【必做】