查询IP
https://www.ipip.net/ip.html
安装常用工具
[root@vultr ~]# yum install -y vim net-tools wget
最好再升级一下系统,以保证获得最新的软件和内核。
# yum -y update
登陆成功后,首先需要修改root密码,因为初始密码太复杂不好记,也不一定安全。
# passwd
回车后设置新密码,再回车重新输入。然后界面显示如下,说明密码修改成功。
(密码长度建议20字符以上,字母大小写 + 数字 + 特殊字符)
为防止SSH登录一段时间后自动断开,可更改如下设置以保持SSH长时间在线。
# vi /etc/ssh/sshd_config
将如下两行代码前的 # 去掉,然后做相应修改:(若无此两行代码请在末尾自行添加)
#PermitUserEnvironment no
#Compression delayed
ClientAliveInterval 30
ClientAliveCountMax 5
#ShowPatchLevel no
#UseDNS yes
保存,重启SSH即可生效:
# service sshd restart
开启BBR加速
BBR是Google提出的一个开源的TCP拥塞控制算法,应用于Linux4.9+内核上,对提升网速效果显著。
因此,对于KVM架构的VPS,博主倾向于在正式部署生产环境之前,首先开启BBR。
务必是KVM架构,OpenVZ不行。可安装 virt-what 查询:
# yum -y install virt-what
# virt-what
首先,切换到 root 目录:
# cd ~
然后,下载脚本并安装BBR:
# wget --no-check-certificate https://github.com/teddysun/across/raw/master/bbr.sh && chmod +x bbr.sh && ./bbr.sh
如提示 wget: command not found ,可执行命令 # yum -y install wget
进行安装。
按要求输入 y 后,自动重启VPS。
重新登入后,查看结果:
# sysctl net.ipv4.tcp_available_congestion_control
出现形如以下字样时,说明BBR开启成功。
net.ipv4.tcp_available_congestion_control = reno cubic bbr
**
**
官网地址
https://lnmp.org/install.html
wget http://soft.vpser.net/lnmp/lnmp1.6.tar.gz -cO lnmp1.6.tar.gz &&
tar zxf lnmp1.6.tar.gz && cd lnmp1.6 && ./install.sh lnmp
安装完成
①为了安全建议将phpmyadmin 目录重命名:
(比如 hereispma , …):
#cd /home/wwwroot/default
#mv phpmyadmin hereispma
②此安装成功页面是IP访问时的默认页面(非域名),建议删除或改名:
#rm -rf index.html 或者
#mv index.html random-name.html
③如需要开启IP访问网站域名,请更改IP访问默认路径(此步骤可选,强烈不推荐):
#vi /usr/local/apache/conf/extra/httpd-vhosts.conf
将 DocumentRoot “/home/wwwroot/default” 及 Directory “/home/wwwroot/default” 两处中的 “/home/wwwroot/default” 修改为需要IP访问的域名,如 “/home/wwwroot/seoimo.com”。
PHP缓存加速类扩展,对降低VPS压力和提高WordPress速度大有裨益。
推荐安装两个:OPcache和Memcached。
首先,需要进入LNMP解压目录 lnmp1.6-full :
#cd /root/lnmp1.6
回车,接下来安装Opcache:
#./addons.sh install opcache
出现
接着安装Memcached:
# ./addons.sh install memcached
回车,选择 2 (php-memcached),回车,再回车。
此时,可以删除之前下载的lnmp1.6-full安装包,以节省空间:
# rm -rf /root/lnmp1.6-full.tar.gz
建议在操作前先开启443端口:CentOS7防火墙中开启相关端口
添加域名:
# lnmp vhost add
回车,提示输入域名:
# q0o0p.top
回车,添加多个域名。博主习惯绑定带 www 的域名:
# www.q0o0p.top
回车,显示网站目录。默认 /home/wwwroot/q0o0p.top
即可。
若是绑定二级域名,必须输入完整的目录路径。例如:
将 tools.seoimo.com 绑定到网站根目录下的 tools 文件夹,则应输入:
/home/wwwroot/seoimo.com/tools
回车,是否对本域名/网站开启访问记录/日志记录。
习惯不单独开起,因为本机上所有访问日志都会记录在 /home/wwwlogs/access_log 文件里。所以,这里可以选择不开起:
# n
继续回车,提示数据库名和数据库用户名是否保持一致:
# y
回车,输入 root 用户的数据库密码(不会显示,在#6搭建LAMP环境中设置好的)。
再次回车,输入数据库名,自行设置
接下来,是否需要开启SSL/HTTPS访问,推荐开启:
# y
这里使用免费的 Let’s Encrypt 证书,所以选择 2 。
此外,开启SSL/HTTPS访问后,还需要进行以下几点操作:(可等建站完成后再设置)
① - 开启 HSTS;② - 关闭 SNI;③ - HTTP全部301重定向到HTTPS
此时打开域名/网址,会提示 403 Forbidden 错误。这是因为网址目录下是空的,继续安装WordPress程序即可。
首先,进入添加的域名目录:
# cd /home/wwwroot/q0o0p.top
回车。然后浏览器中打开WordPress中文站点,下载最新的程序压缩包:
# wget https://wordpress.org/latest.tar.gz
回车。
接下来,将解压出来的wordpress文件夹内全部文件移动到当前的域名目录下(别忘了后面的.)。
# mv wordpress/* .
为避免因权限的问题导致安装出错,比如wp-config.php无法创建、需要提供FTP用户密码以及主题和插件不能更新等,建议赋予网站根目录文件的可写权限。
# chmod -R 755 /home/wwwroot && chown -R www /home/wwwroot
温馨提示以后每添加一个域名,都需要执行一次以上操作;如果出现 “chmod: changing permissions of
‘/home/wwwroot/default/.user.ini’: Operation not permitted”
提示,更改下权限即可:# chattr -i /home/wwwroot/default/.user.ini && lnmp restart
安装SSL证书后,建议打开HTTPS开头的网址安装,例如:https://www.seoimo.com/
如已经使用HTTP安装,需要把HTTP替换为HTTPS网址。https://www.seoimo.com/lamp-ssl/#http-to-https
安装SSL需要用的 crontab 定时功能,为避免出错,这里先检查下是否安装:
# crontab -l
如提示 -bash: crontab: command not found,说明我们需要安装一下 crontab:
# yum -y install vixie-cron crontabs
LNMP1.4集成了一键申请、安装和自动更新 Let’s Encrypt 的免费SSL证书,相较于LNMP1.3来说,私以为这个算是最大的亮点。
安装SSL比较简单,和绑定域名类似:
# lnmp ssl add
在此提醒,务必要确保输入的域名和网站路径不要出现任何错误,一个字符都不行。否则,后续会出各种问题。
对VPS进行必要的配置优化,以便进一步提高主机性能。
强烈推荐几款实用的甚至建站必备的插件:
①WordPress 5.X 版本的Gutenberg编辑器用起来别扭的话,可以用插件改回经典版编辑器:
https://wordpress.org/plugins/classic-editor/
②WP-Super-Cache(页面缓存):https://wordpress.org/plugins/wp-super-cache/
③Autoptimize(CSS/JS压缩):https://wordpress.org/plugins/autoptimize/
④ShortPixel(图片压缩):https://wordpress.org/plugins/shortpixel-image-optimiser/
⑤A3-Lazy-Load(图片懒加载):https://wordpress.org/plugins/a3-lazy-load/
⑥Yoast-SEO(SEO优化):https://wordpress.org/plugins/wordpress-seo/
⑦WP-Mail-SMTP(smtp发信):https://wordpress.org/plugins/wp-mail-smtp/
⑧WP-DB-Backup(数据库备份):https://wordpress.org/plugins/wp-db-backup/
⑨MemcacheD-Is-Your-Friend(对象缓存,按上文安装了php-memcached才可以用):
https://wordpress.org/plugins/memcached-is-your-friend/
参考https://www.seoimo.com/wordpress-vps/
(此步可以略过)
添加Swap交换分区
针对1GB内存以下的VPS,最新版本的LNMP比较智能的自动添加Swap交换区了。
用如下命令查看是否已添加了1GB的Swap,如已添加,此步骤可直接跳过。
# free -m
当然,如果你觉得自动添加的Swap空间1GB有点大,也可以参考下文进行调整。
①此方法只适用于虚拟化技术为KVM和Xen的VPS,OpenVZ不支持添加Swap交换分区;
②若搬瓦工VPS管理后台Swap状态长期显示红色,则表明VPS内存已满,该考虑升级VPS了。
关于Swap分区的具体含义在此不再赘述,详细可以参考百度百科:Swap分区
简单来说,当VPS的物理内存不够用时,系统会占用一部分Swap分区作为临时内存,目的是防止因物理内存耗尽而可能出现的错误。
因此,对小内存VPS来说,设置一定大小的Swap交换分区显然很有意义。
但是,由于硬盘的 I/O 读写速度远不能和内存的读写速度相提并论(可能相差几十倍),使用Swap交换分区时,系统可能会变得特别缓慢、卡顿,甚至程序会出现错误。
因此,要尽量避免使用Swap分区,不得不使用时也不宜设置过大(大了也没用还占用空间),也就是说:我们不能指望用Swap来代替物理内存使用。甚至于,当你的VPS物理内存很充足时,完全可以禁用Swap以提高VPS的响应速度。
当物理内存(实际使用内存)长期处于耗尽状态时,正确的做法就是该升级套餐了。
添加Swap交换分区
使用root用户登陆PUTTY,先看看是否已经添加了Swap:
# free -m
若显示为 Swap = 0 的话,表明没有添加。否则,说明系统已自带Swap交换分区。
进入var文件目录:
# cd /var/
获取512MB的文件块(一般设置为内存的一半或相等即可):
# dd if=/dev/zero of=swapfile bs=1M count=512
创建Swap文件:
# /sbin/mkswap swapfile
激活Swap文件:
# /sbin/swapon swapfile
为了安全,建议修改一下权限:
# chmod 0600 /var/swapfile
将swapfile添加到fstab文件中,开机自动启动:
# echo "/var/swapfile swap swap defaults 0 0" >> /etc/fstab
搞定了。此时查看内存信息:
# free -m
出现
“Swap: XXX”
字样表示设置成功。
修改 swappiness 默认值
上面说了,我们要尽量避免使用Swap分区。所以,这里我们需要额外做些修改,使系统尽可能的优先使用物理内存。
首先查看下 swappiness 的默认值:
# cat /proc/sys/vm/swappiness
通常,返回值是60(默认值)。
实际上,swappiness = 0 表示最大限度使用物理内存,然后才使用swap分区;swappiness = 100 表示系统积极的使用swap分区,然后才使用物理内存。
显然,这里我们需要降低 swappiness 的默认值。
# vi /etc/sysctl.conf
在里面添加 vm.swappiness = 10
字段,然后退出保存。
或者:
# echo "vm.swappiness = 10" >> /etc/sysctl.conf
然后 # reboot
一下VPS即可。
如操作过程中提示 “swapoff failed: Cannot allocate memory” 错误,表示swapoff失败,无法分配内存。由于更改Swap配置也是需要内存的,所以,如果目前VPS内存不够用,就会出现此类错误。
解决办法很简单,关闭其他程序释放内存即可,比如关闭LNMP: # lnmp stop
创建完成之后,再重启LNMP: # lnmp start
删除/重置Swap交换分区
若系统已设置Swap,但是需要对其做出更改的话,可以将其删除。
首先查看Swap位置:
# swapon -s
比如显示为 /var/swapfile,则停止并删除swap:
# /sbin/swapoff /var/swapfile
# rm -rf /var/swapfile
然后,将其删除开机启动:
# vi /etc/fstab
将 /var/swapfile swap swap defaults 0 0 该行删除,然后保存退出。
Keep-Alive功能 + 优化Httpd配置
https://www.seoimo.com/wordpress-vps/