首页 » PHP教程 » php转换gt技巧_记一次8小时惊心动魄的做事器网站进级

php转换gt技巧_记一次8小时惊心动魄的做事器网站进级

访客 2024-12-03 0

扫一扫用手机浏览

文章目录 [+]

2017年3月26日,此时此刻,我对做事器+网站进行了升级,也不知道自己脑袋那根弦短路了,大好的周末居然玩起了升级。

由于long long ago之前用的某宝的镜像环境,某段韶光由于某种缘故原由下架了。
本日看了下,居然收费了,有木有,居然收费了,在那么多免费镜像环境中,某宝真是一朵奇葩。

php转换gt技巧_记一次8小时惊心动魄的做事器网站进级 php转换gt技巧_记一次8小时惊心动魄的做事器网站进级 PHP教程

由于,网站数据利用的是挂载数据盘,以是省去了网站备份的事情,可以直接重装系统盘(当时买数据盘是个多么明智的决策),当然根本的Nginx配置文件还是要备份的。

php转换gt技巧_记一次8小时惊心动魄的做事器网站进级 php转换gt技巧_记一次8小时惊心动魄的做事器网站进级 PHP教程
(图片来自网络侵删)

数据库利用的阿里云的RDS,同样不须要备份(自动备份机制),比较以前安装在运用做事器,那将是一个多么悲催的故事。

做事器升级

centos 6.5 升级至 centos 6.8,由于网站程序采取PHP开拓,这里只须要安装Nginx+PHP,大体看了下镜像环境和面板都不合心意,于是决定自己安装一遍,也就有了后来的触目惊心。

安装 Nginx

安装Nginx之前,首先要安装好编译环境gcc和g++,安装Nginx须要PRCE库、zlib库和ssl的支持,除了ssl外其他的我们都是辞官网下载(这里没选择YUM安装):

Nginx:http://nginx.org/

PCRE:http://www.pcre.org/

zlib:http://www.zlib.net/

做事器直接下载

wegt https://ftp.pcre.org/pub/pcre/pcre2-10.23.tar.gz

wget http://www.zlib.net/zlib-1.2.11.tar.gz

wget http://nginx.org/download/nginx-1.10.3.tar.gz

安装openssl:

yum -y install openssl openssl-devel

安装pcre支持rewrite库,解压pcre,不须要安装:

tar -xvzf pcre2-10.23.tar.gz

安装办法二:也可以利用YUM安装

yum install pcre-devel pcre -y

然后解压zlib,同样不须要安装

tar -xvzf zlib-1.2.11.tar.gz

解压nginx:

tar -xvzf nginx-1.10.3.tar.gz

切换到 cd nginx-1.10.3 进入目录开始安装nginx:

./configure --prefix=/usr/local/nginx --sbin-path=/usr/local/nginx/nginx --conf-path=/usr/local/nginx/nginx.conf --pid-path=/usr/local/nginx/nginx.pid --with-http_ssl_module --with-pcre=/home/tools/pcre2-10.23 --with-zlib=/home/tools/zlib-1.2.11

把稳 /home/tools/pcre2-10.23 和/home/tools/zlib-1.2.11 是刚刚开释的pcre和zlib的源码目录,编译时nginx会编译到一起

安装位置便是--prefix指定的/usr/local/nginx

配置文件位置:/usr/local/nginx/nginx.conf

编译:

make

安装:

make install

实行软连接命令:

ln -s /usr/local/nginx/nginx /usr/sbin

Nginx干系命令:

检讨nginx.conf配置文件的精确性: nginx -t

检讨版本: nginx -V

启动: nginx

重启: nginx -s reload

安装PHP

PHP http://php.net/downloads.php

wegt http://php.net/get/php-5.6.30.tar.gz/from/a/mirror

安装libxml2和libxml2-devel

yum -y install libxml2

由于不同的操作系统环境,系统安装开拓环境包的完全程度也不相同,以是建议安装操作系统的时候做必要选择,也可以统一实行一遍所有的命令,将没有安装的组件安装好,如果已经安装了可能会进行升级,版本完备同等则不会进行任何操作,命令除上面2个之外,汇总如下:

yum -y install libxml2

安装完成之后,实行配置:

./configure --prefix=/usr/local/php --with-curl --with-freetype-dir --with-gd --with-gettext --with-iconv-dir --with-kerberos --with-libdir=lib64 --with-libxml-dir --with-mysqli --with-openssl --with-pcre-regex --with-pdo-mysql --with-pdo-sqlite --with-pear --with-png-dir --with-jpeg-dir --with-xmlrpc --with-xsl --with-zlib --with-bz2 --with-mhash --enable-fpm --enable-bcmath --enable-libxml --enable-inline-optimization --enable-gd-native-ttf --enable-mbregex --enable-mbstring --enable-opcache --enable-pcntl --enable-shmop --enable-soap --enable-sockets --enable-sysvsem --enable-sysvshm --enable-xml --enable-zip

然后实行编译:

make

编译韶光可能会有点长,编译完成之后,实行安装:

make install

php的默认安装位置上面已经指定为/usr/local/php,接下来配置相应的文件:

cp php.ini-development /usr/local/php/lib/php.inicp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf

然后设置php.ini,利用: vi /usr/local/php/lib/php.ini 打开php配置文件找到cgi.fix_pathinfo配置项,这一项默认被注释并且值为1,根据官方文档的解释,这里为了当文件不存在时,阻挡Nginx将要求发送到后真个PHP-FPM模块,从而避免恶意脚本注入的攻击,以是此项该当去掉注释并设置为0

创建web用户:

groupadd www-datauseradd -g www-data www-data

修正php-fpm.conf添加以上创建的用户和组,这时候利用 vi /usr/local/etc/php-fpm.conf 打开文件后找到官方所提示的位置:

user = www-datagroup = www-data

实行以下命令启动php-fpm做事:

php-fpm

启动完毕之后,php-fpm做事默认利用9000端口,利用 netstat -tln | grep 9000 可以查看端口利用情形。

你也可以利用 ps -ef|grep php 命令查看进程。

停滞 php-fpm

killall php-fpm

网站升级

环境搭建成功往后,重新挂载数据盘,配置网站目录,并整理网站Nginx的配置文件(紧张路径的修正)。

配置完成后,重启Nginx,论坛首页访问正常,然后后台上岸后一片空缺,无论密码输入精确还是缺点,都是空空如也。

虽然菊花一紧赶紧看了一下博客访问是否正常,首页给我了个惊喜:

500 server error

论坛后台空缺修复方案:

关于discuz论坛后台上岸后一片空缺,网上乱起八糟的方法很多,不得而终。
有说是缓存的问题,说清空下data目录下的cache文件;有说覆盖下source文件的,果真也是不可以的;还有一个比较扯淡的方法便是,修复数据库,修复完毕后,哔了狗了,后台进不去,前台样式直接乱了。
幸好有RDS昨天数据库备份(虽然失落去了一小部分数据),赶紧还原了一下下。

终极办理方法,由于网站程序是3.2,故升级了一下到3.3。

1)备份数据库

2)建立文件夹 old,旧程序除了 data , config, uc_client, uc_server 目录以外的程序移动进入 old目录中

3)上传 X3.3 程序(压缩包中 upload 目录中的文件), 如上传时候提示覆盖目录,请选择“是”

4)上传安装包 utility 目录中的 update.php 到论坛 install 目录,删除 install 目录中的index.php

实行 http://你的域名/论坛路径/install/update.php

参照提示进行升级即可。
升级韶光随着数据的大小和做事器性能而变。

升级完毕,进入后台,更新缓存,并测试功能。

升级成功后,old目录中的文件可以删除了。

可能涌现的问题Can not write to cache files

办理方法:删除cache和cache下的文件 重新建立这个文件夹。

博客500缺点办理方案:

博客 500 server error 后台也无法进入,捯饬的半天也没有办理方法。
终极还是重新安装了一下,然后把模版,插件以及附件转移过来,就此搞定。

这里强调一下,重新安装便是重新走一遍流程,数据库还是利用以前的数据,安装过程中会提示你的。

履历教训

升级一定要备份要,升级一定要备份要,升级一定要备份要,主要的事情说三遍。

1)网站程序修正或者升级前一定要备份

2)升级或者修复网站之前一定要备份数据库

3)搬家往后如果怎么都调试不好一些莫名其妙的问题,直接重装或者升级就好了(可以办理99.9%的问题)

4)如果有条件一定不要把网站程序放到系统盘,最好挂载一个数据盘

5)如果有条件一定不要把数据库安装在运用做事器上,最好买个阿里云的RDS

标签:

相关文章

介绍网站空间,如何选择合适的虚拟家园

在数字化时代,网站已成为企业、个人展示形象、传播信息的平台。而一个稳定、安全、高效的网站空间则是网站稳定运行的基础。如何挑选合适的...

PHP教程 2024-12-05 阅读0 评论0

介绍网站设计之灵魂_用户体验至上

在数字化时代,网站作为企业展示形象、拓展业务的重要平台,其设计质量直接影响着用户的访问体验和企业的品牌形象。而用户体验,作为网站设...

PHP教程 2024-12-05 阅读0 评论0

opwert安装php技巧_最详尽电助力自行车介绍

倍力车是一种由小型的电动马达赞助骑行者踩踏的自行车,它是一种低功率的电动自行车。然而,与其他类型的电动自行车不同的是,在很多国家,...

PHP教程 2024-12-05 阅读0 评论0