博客一直使用firekylin搭建,最近看着typecho活跃度还可以,于是本周末用docker重新搭建了博客。
一、环境说明
操作系统:CentOS7.6
技术:Docker、MySQL、PHP、Nginx
使用工具:Xftp 7、Xshell 7、Notepad++
博客系统:Typecho
二、安装步骤
三、遇到问题
- 安装mysql、php、nginx时,映射文件路径错误,导致安装好后,找不到文件。
- Nginx配置时映射路径错误、80端口自动转发443端口,导致http访问一直追加路径。
- 证书路径放置错误。
- Typecho初始化安装时,提示"对不起,无法连接数据库,请先检查数据库配置再继续进行安装"。
四、解决方案
- 通过docker log 容器,查看日志,一步步解决。
- 添加异常提示代码:, $e->getMessage()
- instal.php第56行,添加ob_start();
- ip地址错误,默认localhost,docker安装时,需要改成公网ip或局域网ip。
- 未创建typecho数据库。
Nginx配置文件:
server {
listen 443 ssl http2 reuseport;
server_name yanxizhu.com www.yanxizhu.com;
root /var/www/html/yanxizhu.com;
index index.php;
ssl on;
ssl_certificate /etc/nginx/conf.d/自己证书.crt;
ssl_certificate_key /etc/nginx/conf.d/自己证书key.key;
ssl_session_cache shared:SSL:1m;
ssl_session_timeout 5m;
ssl_ciphers ECDHE-RSA-AES128-GCM-SHA256:ECDHE:ECDH:AES:HIGH:!NULL:!aNULL:!MD5:!ADH:!RC4;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
access_log /var/log/nginx/typecho_access.log main;
if (!-e $request_filename) {
rewrite ^(.*)$ /index.php$1 last;
}
location ~ .*\.php(\/.*)*$ {
include fastcgi_params;
fastcgi_param PATH_INFO $fastcgi_path_info;
fastcgi_param PATH_TRANSLATED $document_root$fastcgi_path_info;
fastcgi_param SCRIPT_NAME $fastcgi_script_name;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
fastcgi_index index.php;
fastcgi_pass phpfpm:9000;
fastcgi_split_path_info ^(.+\.php)(.*)$;
}
}
server {
listen 80;
server_name yanxizhu.com www.yanxizhu.com;
rewrite ^(.*) https://yanxizhu.com$1 permanent;
}
评论 (0)