第3课:网站管理

【腾讯云】语音识别准确率高,支持多语种,多场景,限时特惠,最低14.9元起

推广

【腾讯云】语音识别准确率高,支持多语种,多场景,限时特惠,最低14.9元起

网站管理

创建网站

1. 添加站点

基本站点创建

1. 登录宝塔面板
2. 点击"网站" -> "添加站点"
3. 填写基本信息:
   - 域名:example.com
   - 备注:网站描述
   - 根目录:/www/wwwroot/example.com
   - PHP版本:8.1
4. 数据库设置:
   - 创建数据库:是
   - 数据库名:example_com
   - 用户名:example_user
   - 密码:自动生成或手动设置
5. FTP设置:
   - 创建FTP:可选
   - 用户名:example_ftp
   - 密码:自动生成
6. 点击"提交"

高级设置选项

高级选项:
- 网站分类:可创建分类管理
- 网站编码:UTF-8(推荐)
- 开启防跨站攻击:建议开启
- 开启防篡改:根据需要
- 日志切割:建议开启

2. 域名管理

添加域名

网站设置 -> 域名管理:
1. 主域名:example.com
2. 添加子域名:
   - www.example.com
   - blog.example.com
   - api.example.com
3. 泛域名:*.example.com(企业版功能)

域名重定向

设置重定向规则:
1. www.example.com -> example.com
2. HTTP -> HTTPS
3. 旧域名 -> 新域名
4. 目录重定向

3. 网站目录结构

标准目录结构

/www/wwwroot/example.com/
├── index.html              # 网站首页
├── css/                    # 样式文件
├── js/                     # JavaScript文件
├── images/                 # 图片文件
├── uploads/                # 上传文件
├── config/                 # 配置文件
├── logs/                   # 日志文件
│   ├── access.log         # 访问日志
│   └── error.log          # 错误日志
├── .htaccess              # Apache重写规则
└── .user.ini              # PHP配置文件

SSL证书配置

1. Let’s Encrypt免费证书

申请免费SSL证书

网站设置 -> SSL:
1. 选择"Let's Encrypt"
2. 填写域名:
   - example.com
   - www.example.com
3. 填写邮箱地址
4. 点击"申请"
5. 等待证书签发(通常几分钟)

自动续期设置

SSL设置:
1. 开启"自动续期"
2. 设置续期提醒
3. 配置续期日志

2. 商业SSL证书

上传证书文件

网站设置 -> SSL -> 其他证书:
1. 证书(PEM格式):粘贴.crt文件内容
2. 密钥(KEY):粘贴.key文件内容
3. 点击"保存"

证书链配置

完整证书链:
1. 网站证书
2. 中间证书
3. 根证书

3. HTTPS配置

强制HTTPS

SSL设置:
1. 开启"强制HTTPS"
2. HTTP自动跳转HTTPS
3. HSTS安全头设置
4. 安全等级配置

SSL安全配置

高级设置:
- TLS版本:1.2, 1.3
- 加密套件:现代浏览器兼容
- OCSP装订:提高性能
- 会话复用:减少握手开销

网站配置

1. PHP配置

PHP版本管理

网站设置 -> PHP版本:
1. 查看当前版本
2. 切换PHP版本:
   - PHP 7.4
   - PHP 8.0
   - PHP 8.1
   - PHP 8.2
3. 多版本共存

PHP配置调整

网站设置 -> 配置文件:
1. 内存限制:memory_limit = 256M
2. 执行时间:max_execution_time = 300
3. 上传大小:upload_max_filesize = 64M
4. POST大小:post_max_size = 64M
5. 错误显示:display_errors = Off

PHP扩展管理

软件商店 -> PHP -> 安装扩展:
- mysqli:MySQL数据库支持
- pdo_mysql:PDO MySQL支持
- gd:图像处理
- curl:HTTP客户端
- zip:压缩文件支持
- redis:Redis缓存支持
- opcache:代码缓存

2. 伪静态规则

常用CMS伪静态

网站设置 -> 伪静态:

WordPress:
location / {
    try_files $uri $uri/ /index.php?$args;
}

ThinkPHP:
location / {
    if (!-e $request_filename) {
        rewrite ^(.*)$ /index.php?s=/$1 last;
    }
}

Laravel:
location / {
    try_files $uri $uri/ /index.php?$query_string;
}

自定义伪静态

# 产品页面伪静态
location ~* ^/product/(\d+)\.html$ {
    rewrite ^/product/(\d+)\.html$ /product.php?id=$1 last;
}

# 分类页面伪静态
location ~* ^/category/(\w+)/?$ {
    rewrite ^/category/(\w+)/?$ /category.php?name=$1 last;
}

3. 访问控制

IP访问限制

网站设置 -> 访问限制:
1. 白名单模式:只允许指定IP访问
2. 黑名单模式:禁止指定IP访问
3. IP段设置:192.168.1.0/24
4. 国家/地区限制

目录访问控制

文件管理 -> 权限设置:
1. 禁止访问敏感目录
2. 设置目录密码保护
3. 配置访问权限

防盗链设置

网站设置 -> 防盗链:
1. 允许的域名列表
2. 禁止的文件类型
3. 返回图片设置
4. 空Referer处理

网站备份

1. 手动备份

网站文件备份

网站 -> 备份:
1. 选择要备份的网站
2. 点击"备份"
3. 选择备份类型:
   - 网站文件
   - 数据库
   - 完整备份
4. 等待备份完成

备份文件管理

备份管理:
1. 查看备份列表
2. 下载备份文件
3. 删除旧备份
4. 恢复备份

2. 自动备份

计划任务备份

计划任务 -> 添加任务:
1. 任务类型:备份网站
2. 任务名称:网站自动备份
3. 执行周期:每天凌晨2点
4. 备份到:本地/远程
5. 保留份数:7份

远程备份配置

备份设置:
1. FTP备份:
   - 服务器地址
   - 用户名密码
   - 备份目录
2. 云存储备份:
   - 阿里云OSS
   - 腾讯云COS
   - 七牛云

3. 网站恢复

从备份恢复

网站 -> 恢复:
1. 选择备份文件
2. 选择恢复类型:
   - 仅恢复文件
   - 仅恢复数据库
   - 完整恢复
3. 确认恢复操作

性能优化

1. 缓存配置

静态文件缓存

网站设置 -> 缓存:
1. 浏览器缓存:
   - 图片文件:30天
   - CSS/JS:7天
   - HTML:1小时
2. Gzip压缩:
   - 启用压缩
   - 压缩级别:6
   - 压缩类型:text/html,text/css,application/javascript

PHP缓存优化

PHP设置:
1. OPcache:
   - 启用OPcache
   - 内存大小:128M
   - 缓存文件数:4000
2. Redis缓存:
   - 安装Redis
   - 配置连接参数
   - 设置缓存策略

2. 数据库优化

MySQL性能调优

数据库 -> 性能调整:
1. 缓冲池大小:innodb_buffer_pool_size
2. 连接数限制:max_connections
3. 查询缓存:query_cache_size
4. 慢查询日志:slow_query_log

数据库索引优化

phpMyAdmin -> 数据库优化:
1. 分析表结构
2. 添加必要索引
3. 删除冗余索引
4. 优化查询语句

3. CDN配置

静态资源CDN

网站设置 -> CDN:
1. 选择CDN服务商
2. 配置加速域名
3. 设置缓存规则
4. 回源配置

安全防护

1. 网站防火墙

启用网站防火墙

安全 -> 网站防火墙:
1. 启用防火墙
2. 防护模式:
   - 观察模式
   - 防护模式
   - 攻击模式
3. 规则配置:
   - SQL注入防护
   - XSS攻击防护
   - 文件上传防护

自定义防护规则

防火墙规则:
1. IP黑白名单
2. URL过滤规则
3. User-Agent过滤
4. 请求频率限制

2. 文件安全

文件权限设置

文件管理 -> 权限:
1. 目录权限:755
2. 文件权限:644
3. 可执行文件:755
4. 敏感文件:600

文件监控

安全 -> 文件监控:
1. 监控重要文件
2. 文件变化告警
3. 恶意文件检测
4. 文件完整性校验

3. 访问日志分析

日志分析工具

日志 -> 访问分析:
1. 访问统计
2. 错误分析
3. 攻击检测
4. 性能分析

故障排除

1. 网站无法访问

检查步骤

1. 检查域名解析:nslookup example.com
2. 检查服务状态:systemctl status nginx
3. 检查端口开放:netstat -tlnp | grep :80
4. 检查防火墙:iptables -L
5. 查看错误日志:tail -f /www/wwwroot/example.com/logs/error.log

2. SSL证书问题

常见问题

1. 证书过期:重新申请或续期
2. 证书不匹配:检查域名配置
3. 证书链不完整:添加中间证书
4. 混合内容:检查HTTP资源引用

3. 性能问题

性能诊断

1. 查看服务器负载:top, htop
2. 检查内存使用:free -h
3. 分析慢查询:MySQL慢查询日志
4. 网络延迟测试:ping, traceroute

总结

本课程详细介绍了宝塔面板的网站管理功能:

  1. 网站创建:添加站点、域名管理、目录结构
  2. SSL配置:免费证书申请、HTTPS设置
  3. 网站配置:PHP设置、伪静态、访问控制
  4. 备份恢复:手动备份、自动备份、网站恢复
  5. 性能优化:缓存配置、数据库优化、CDN
  6. 安全防护:防火墙、文件安全、日志分析

下一课预告

在下一课中,我们将学习数据库管理,包括:

  • MySQL/MariaDB管理
  • 数据库备份恢复
  • 性能优化
  • 安全配置

💡 小贴士:网站管理是宝塔面板的核心功能。建议定期备份网站数据,配置SSL证书,并启用安全防护功能。

Vue3 + TypeScript 企业级项目实战

课程推荐

Vue3 + TypeScript 企业级项目实战
Python 全栈开发工程师培训

热门课程

Python 全栈开发工程师培训

📚 文章对你有帮助?请关注我的公众号,万分感谢!

获取更多优质技术文章,第一时间掌握最新技术动态

关注公众号

关注公众号

第一时间获取最新技术文章

添加微信

添加微信

技术交流 · 问题答疑 · 学习指导

评论讨论

欢迎留下你的想法和建议