文章目录[隐藏]
使用阿里云ECS+OSS图床+宝塔面板 搭建WordPress站点系列之第二篇。
本文阿里云ECS使用的操作系统为 Ubuntu 20.04 64位
。
一、安装宝塔面板
宝塔Linux面板是提升运维效率的服务器管理软件,支持一键LAMP/LNMP/集群/监控/网站/FTP/数据库/JAVA等100多项服务器管理功能。
有30个人的专业团队研发及维护,经过200多个版本的迭代,功能全,少出错且足够安全,已获得全球百万用户认可安装。运维要高效,装宝塔。
1.1 安装要求
- 内存:512M以上,推荐768M以上(纯面板约占系统60M内存)
- 硬盘:300M以上可用硬盘空间(纯面板约占20M磁盘空间)
- 系统:CentOS 7.1+ (Ubuntu16.04+.、Debian9.0+),确保是干净的操作系统,没有安装过其它环境带的Apache/Nginx/php/MySQL/pgsql/gitlab/java(已有环境不可安装)
- 架构:x86_64(主流服务器均是此架构),ARM不完整兼容(面板环境安装慢,部分软件可能安装不上)
宝塔Linux面板7.7.0版本是基于Centos/Debian/Ubuntu开发的,为了最好的兼容性,请使用以上系统
系统兼容性顺序:
Centos7.x > Debian10 > Ubuntu 20.04 > Cenots8.x > Ubuntu 18.04 > 其它系统
提示:Centos官方已宣布在2020年停止对Centos6的维护更新,各大软件开发商也逐渐停止对Centos6的兼容,新服务器不建议使用Centos6。
1.2 放行阿里云安全组端口
如需完整使用宝塔的所有功能,需要放行如下端口:
20
、21
、39000
–40000
端口(linux 系统 ),3000
–4000
(windows系统)22
(SSH)80
、443
(网站及SSL)3306
(数据库远程连接)888
(phpmyadmin)8888
(宝塔后台面板)
1.3 安装宝塔面板
wget -O install.sh http://download.bt.cn/install/install-ubuntu_6.0.sh && sudo bash install.sh
安装成功提示,表示安装完成。
==================================================================
Congratulations! Installed successfully!
==================================================================
外网面板地址: http://39.106.153.68:8888/ea32bd0c
内网面板地址: http://172.26.33.215:8888/ea32bd0c
username: snngkgtn
password: 49b36d9a
If you cannot access the panel,
release the following panel port [8888] in the security group
若无法访问面板,请检查防火墙/安全组是否有放行面板[8888]端口
==================================================================
专业版永久授权:
wget -O updatepro_6.sh http://oss.yuewux.com/updatepro_6.sh && bash updatepro_6.sh
1.4 首次访问宝塔面板
安装成功提示中,浏览器访问外网面板地址: http://39.106.153.68:8888/ea32bd0c。
二、安装 LNMP 套件
【软件商店】中依次安装以下必须运行环境程序:
- Nginx版本:
1.20.0
- MySQL版本:
5.7.34
- PHP版本:
7.4
- Pure-Ftpd版本:
1.0.49
- phpMyAdmin版本:
5.1
2.1 配置
- 宝塔面板【软件商店】–【MySQL 5.7.34】–【设置】–【mysqld管理】,其中,【端口】修改为
13306
,【性能调整】–【优化方案】选择2-4GB
–>【保存】,然后【重启数据库】。存储位置:/www/server/data
。 - 宝塔面板【软件商店】–【宝塔插件】,安装【Fail2ban防爆破 1.7】。然后,在【设置】-【服务保护】中,填入
mysql
的服务保护。 - 宝塔面板【软件商店】–【phpMyAdmin 5.1】–【设置】–【phpmyadmin 管理】–【安全设置】页面,修改默认端口
888
为10887
并开启 SSL 端口10888
及密码访问。 - 宝塔面板【FTP]–【修改 FTP 端口】为
10021
,并在【安全】和阿里云安全组规则中放行新端口号10021
。 - 宝塔面板【面板设置】–【设置】中,修改【面板用户】、【面板密码】并绑定域名和宝塔账号。
- 宝塔面板【监控】–【开启监控】。
- 宝塔面板【计划任务】–【添加计划任务】,添加【任务类型】为
释放内存
,【执行周期】为每天 1 小时 30 分钟
。 - 宝塔面板【软件商店】–【PHP-7.4】–【设置】–【安装扩展】中,分别安装
fileinfo
、opcache
、imagemagick
、exif
。 - 宝塔面板【数据库】–【root密码】,修改数据库密码,然后点击【提交】。
2.2 Fail2ban 防爆破
宝塔面板【软件商店】–【宝塔插件】,安装【Fail2ban防爆破 1.7】。然后,在【设置】-【服务保护】中,填入mysql
的服务保护。
三、绑定域名并开启面板 SSL
3.1 设置域名
【面板设置】-【域名】设置为: bt.ithuang.net
。
保存后,默认跳转到链接http://bt.ithuang.net:21288/login
,并提示请使用正确的入口登录面板
。
这是安全入口
导致的,在链接中补全安全入口
,http://bt.ithuang.net:21288/ea32bd0c/ ,即可重新进入登录页。
3.2 删除安全入口
【面板设置】-【安全入口】-【修改】,删除内容后点击【提交】按钮。
3.3 设置面板SSL
点击【面板SSL】这几个字符,弹出【自定义面板证书】对话框。注意,不是点击开关图标,而是点击面板SSL
这几个字~
分别填入域名bt.ithuang.net
证书的密钥(KEY) 和 证书(PEM格式) ,点击【保存】按钮,开启【面板SSL】。类型选择【自签证书】,提交。然后重启面板。
此时,可以使用URL: https://bt.ithuang.net:18888
访问宝塔面板。
3.4 https 无端口号访问宝塔面板
总带一个端口号,还是不方便,下面方法可以通过 Nginx
反向代理隐藏掉宝塔面板的端口号。
3.4.1 新建网站分类
新建分类,名称为 面板
。【网站】–【分类:全部分类】–【分类设置】–【网站分类管理】,填写新分类名称面板
,然后点击【添加】按钮。
3.4.2 添加站点
宝塔面板【网站】–【添加站点】创建一个空站点(无FTP和数据库),该站点域名与宝塔面板绑定的域名相同(都是 bt.ithuang.net
),网站分类选面板
。
3.4.3 设置新站点
进入新创建站点的【设置】,弹出【站点修改】对话框,使用二级域名的 SSL 证书并【强制HTTPS】访问。
【SSL】-【其他证书】,填入域名bt.ithuang.net
证书的密钥(KEY) 和 证书(PEM格式) ,点击【保存】按钮,开启【强制HTTPS】。
3.4.4 隐藏端口号
使用 Nginx
反向代理,隐藏掉宝塔面板的端口号。在【站点修改】对话框 –【配置文件】中的代码修改为:
#PHP-INFO-START PHP引用配置,可以注释或修改
#SECURITY-START 防盗链配置
location ~ .*.(jpg|jpeg|gif|png|js|css|ico)$
{
proxy_pass https://bt.ithuang.net:18888;
expires 30d;
access_log /dev/null;
valid_referers none blocked bt.ithuang.net;
if ($invalid_referer){
return 404;
}
}
#SECURITY-END
include enable-php-74.conf;
#PHP-INFO-END
#hjz_20210513 修改图片资源反向代理
location ~ .*.(gif|jpg|jpeg|png|bmp|swf|ico)$
{
proxy_pass https://bt.ithuang.net:18888;
expires 30d;
error_log /dev/null;
access_log /dev/null;
}
#hjz_20210513 修改静态资源反向代理
location ~ .*.(js|css)?$
{
proxy_pass https://bt.ithuang.net:18888;
expires 12h;
error_log /dev/null;
access_log /dev/null;
}
#hjz_20200209 反向代理
location / {
proxy_pass https://bt.ithuang.net:18888;
proxy_set_header Host $host:$server_port;
proxy_set_header REMOTE-HOST $remote_addr;
proxy_set_header X-Real-Ip $remote_addr;
proxy_set_header X-Nginx-Proxy true;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
}
使用域名 bt.ithuang.net
即可访问宝塔面板,不再需要端口号。
3.4.5 如果Nginx 启动失败
服务器重启时,如果 Nginx 报异常: nginx[888]: Starting nginx... nginx: [emerg] host not found in upstream "bt.ithuang.net"
。
其实 Nginx 配置语法上没有错误,只是系统无法解析这个域名,所以报错。
解决办法:添加域名解析 DNS 到 /etc/hosts
文件,令系统可以解析该域名即可。
# 修改 hosts 文件
vim /etc/hosts
# 最后一行加入
127.0.0.1 bt.ithuang.net
再次启动 Nginx,即可顺利启动~~
sudo systemctl restart nginx
sudo systemctl status nginx
● nginx.service - LSB: starts the nginx web server
Loaded: loaded (/etc/rc.d/init.d/nginx; bad; vendor preset: disabled)
Active: active (running) since Mon 2021-12-13 10:39:01 CST; 9min ago
Docs: man:systemd-sysv-generator(8)
Process: 24367 ExecStop=/etc/rc.d/init.d/nginx stop (code=exited, status=0/SUCCESS)
Process: 24375 ExecStart=/etc/rc.d/init.d/nginx start (code=exited, status=0/SUCCESS)
Tasks: 4
Memory: 83.3M
CGroup: /system.slice/nginx.service
├─24377 nginx: master process /www/server/nginx/sbin/nginx -c /www/server/nginx/conf/nginx.conf
├─25107 nginx: worker process
├─25108 nginx: worker process
└─25109 nginx: cache manager process
Dec 13 10:39:01 ithuangnet systemd[1]: Starting LSB: starts the nginx web server...
Dec 13 10:39:01 ithuangnet nginx[24375]: Starting nginx... done
Dec 13 10:39:01 ithuangnet systemd[1]: Started LSB: starts the nginx web server.
免责声明: 本网站所发布的一切资源均来自于会员发布以及互联网收集,不代表本站立场,仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则一切后果请用户自负;依据WordPress GPL开源许可协议分享,如有侵犯到您的权益,请联系我们。