4.1 KiB
4.1 KiB
圣巧依官网 ── 切换 coolcoth.com(Apache → Nginx)部署说明
适用:把原
coolcoth.com站点迁移到新域名coolcoth.com,并将 Web 服务由 Apache 切换为 Nginx(宝塔环境)。 联系邮箱保持service@coolcoth.com(同属圣巧依公司,未随域名变更)。
一、本次改动清单(相对原 coolcoth.com 代码)
| 文件 | 改动内容 | 是否需上传替换 |
|---|---|---|
nginx/coolcoth.com.conf |
新增:Nginx 完整站点配置(http→https、www 规范、伪静态、安全头、acme) | ✅ 新增(参考/直接用作站点配置) |
app/Core/Helper.php |
apply_security_headers() 改为只输出动态 CSP;通用安全头(HSTS 等)移交 Nginx 层下发,避免重复头 |
✅ 替换 |
public/robots.txt |
Sitemap 地址改为 https://coolcoth.com/sitemap.xml |
✅ 替换 |
robots.txt(项目根) |
同上 | ✅ 替换 |
public/user.ini |
会话目录改为 /www/php_session/coolcoth.com/ |
✅ 替换 |
app/Core/Theme.php |
联系邮箱(保持 service@coolcoth.com,未改) |
❌ 无需替换 |
install/seed.php |
联系邮箱(保持 service@coolcoth.com,未改) |
❌ 无需替换 |
.htaccess / public/.htaccess |
Apache 规则,Nginx 下不生效,保留无害 | ❌ 无需替换 |
因站点功能(路由、SEO、后台)基于请求域名自动生成 URL(
site_url()/absolute_url()), 除上方显式列出的硬编码点外,其余代码无需改动即可适配新域名。
二、宝塔 Nginx 部署步骤
- DNS 解析:
coolcoth.com与www.coolcoth.com均 A 记录指向阿里云 ECS 公网 IP。 - 建站:宝塔 → 网站 → 新建站点
coolcoth.com(同时添加www.coolcoth.com),- Web 服务:Nginx
- 运行目录 =
/public
- 站点配置:
- 方式 A(推荐):网站 → 设置 → 配置文件,整体替换为
nginx/coolcoth.com.conf中的server块; - 方式 B:只把文件「伪静态区」内容粘到「伪静态」框,再用「设置 → 重定向」开启 https + www 跳转。
- ⚠️ 修改
fastcgi_pass的php-cgi-74.sock为你服务器实际 PHP 版本(如php-cgi-80.sock/php-cgi-82.sock)。
- 方式 A(推荐):网站 → 设置 → 配置文件,整体替换为
- SSL:网站 → SSL → Let's Encrypt,勾选
coolcoth.com与www.coolcoth.com→ 申请并开启「强制 HTTPS」。 - 上传代码:把整站代码传到
/www/wwwroot/coolcoth.com/(运行目录为public/), 并用本包内的app/Core/Helper.php、public/robots.txt、robots.txt、public/user.ini覆盖对应文件。 - 建会话目录:服务器上创建
/www/php_session/coolcoth.com/并赋予 PHP 进程写权限(与user.ini中路径一致)。
三、安全头分工(重要)
- 通用头(HSTS / X-Frame-Options / X-Content-Type-Options / Referrer-Policy / Permissions-Policy 等):
由 Nginx 在服务器层用
add_header ... always统一下发,覆盖静态资源,不依赖 PHP。 - 严格 CSP(含每次请求随机 nonce):由 PHP
Helper::apply_security_headers()在public/index.php入口下发。 - 二者不再重复,行为与原 Apache 环境一致。
四、验证
http://coolcoth.com/https://coolcoth.com/https://www.coolcoth.com均应 301/200 收敛到https://www.coolcoth.com。- 首页、产品、新闻、后台
/admin正常;/sitemap.xml可访问。 - 用夸克浏览器测试(新域名未被旧拦截规则影响)。
- 浏览器 F12 → Network 查看响应头含
Strict-Transport-Security、Content-Security-Policy、X-Frame-Options等。
五、WWW 策略说明
当前配置延续原 Apache 的「强制 www」策略(所有访问跳到 www.coolcoth.com)。
若希望以裸域 coolcoth.com 为主,删除 nginx/coolcoth.com.conf 中 80 server 的 www. 前缀,
以及 443 server 内对 $host 的 www 跳转即可。
六、旧域名
coolcoth.com 若不再使用,请在 DNS / 阿里云释放;其服务器目录可保留或清理。