Files
coolcoth.com/щГич╜▓coolcoth.comшп┤цШО.md
T
2026-08-08 16:26:31 +08:00

72 lines
4.1 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 圣巧依官网 ── 切换 coolcoth.comApache → Nginx)部署说明
> 适用:把原 `st-joyapparel.com` 站点迁移到新域名 `coolcoth.com`,并将 Web 服务由 Apache 切换为 Nginx(宝塔环境)。
> 联系邮箱保持 `service@st-joyapparel.com`(同属圣巧依公司,未随域名变更)。
---
## 一、本次改动清单(相对原 st-joyapparel.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@st-joyapparel.com`,未改) | ❌ 无需替换 |
| `install/seed.php` | 联系邮箱(保持 `service@st-joyapparel.com`,未改) | ❌ 无需替换 |
| `.htaccess` / `public/.htaccess` | Apache 规则,Nginx 下不生效,保留无害 | ❌ 无需替换 |
> 因站点功能(路由、SEO、后台)基于请求域名自动生成 URL`site_url()` / `absolute_url()`),
> **除上方显式列出的硬编码点外,其余代码无需改动即可适配新域名**。
---
## 二、宝塔 Nginx 部署步骤
1. **DNS 解析**`coolcoth.com``www.coolcoth.com` 均 A 记录指向阿里云 ECS 公网 IP。
2. **建站**:宝塔 → 网站 → 新建站点 `coolcoth.com`(同时添加 `www.coolcoth.com`),
- Web 服务:**Nginx**
- **运行目录 = `/public`**
3. **站点配置**
- 方式 A(推荐):网站 → 设置 → **配置文件**,整体替换为 `nginx/coolcoth.com.conf` 中的 `server` 块;
- 方式 B:只把文件「伪静态区」内容粘到「**伪静态**」框,再用「设置 → 重定向」开启 https + www 跳转。
- ⚠️ 修改 `fastcgi_pass``php-cgi-74.sock` 为你服务器实际 PHP 版本(如 `php-cgi-80.sock` / `php-cgi-82.sock`)。
4. **SSL**:网站 → SSL → Let's Encrypt**勾选 `coolcoth.com``www.coolcoth.com`** → 申请并开启「强制 HTTPS」。
5. **上传代码**:把整站代码传到 `/www/wwwroot/coolcoth.com/`(运行目录为 `public/`),
并用本包内的 `app/Core/Helper.php``public/robots.txt``robots.txt``public/user.ini` 覆盖对应文件。
6. **建会话目录**:服务器上创建 `/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 跳转即可。
---
## 六、旧域名
`st-joyapparel.com` 若不再使用,请在 DNS / 阿里云释放;其服务器目录可保留或清理。