20241105 APACHE2 HTTPS配置文件实现三级域名复用
实现
xxx.domain.com
yyy.domain.com
分别对应
/var/www/html/xxx
/var/www/html/xxx
实现
xxx.domain.com
yyy.domain.com
分别对应
/var/www/html/xxx
/var/www/html/xxx
背景意义,自签证书访问需要额外点击访问
证书>申请证书>填写证书>勾选泛域名支持>选择合适的验证方式>坐等验证通过
下载证书,部署
nano /etc/apache2/sites-available/default-ssl.conf
SSLCertificateFile /path/fullchain.crt
fullchain.crt: 证书和证书链
SSLCertificateKeyFile /path/private.pem
private.pem: 密钥(请妥善保存)
例如
root@Hinlink:/etc/apache2/sites-available# cat default-ssl.conf
<VirtualHost _default_:443>
ServerAdmin webmaster@localhost
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLCertificateFile /etc/apache2/ssl/fullchain.crt
SSLCertificateKeyFile /etc/apache2/ssl/private.pem
<FilesMatch "\.(cgi|shtml|phtml|php)$">
SSLOptions +StdEnvVars
</FilesMatch>
<Directory /usr/lib/cgi-bin>
SSLOptions +StdEnvVars
</Directory>
</VirtualHost>
重启服务
service apache2 restart
第一步,配置域名解析,顶级域名解析到frpc服务器上面
管理DNS记录 类型选择 A,主机选择 @ ,指向地址填写frps服务器IP地址,TTL默认
第二部,配置frpc配置文件
[Ht2_PHP_TOP]
type = http
local_ip = 127.0.0.1
local_port = 80
remote_port = 80
custom_domains = guagau0127.fun
问题背景,Apache2里面日志输出,关于时间这一块,看着难受,所以有了如下需求,修改日志里面的时间格式
案例日志
127.0.0.1 - - [31/Oct/2024:19:20:34 +0800] "GET /index.php/vod/search/actor/Ximena+del+Solar.html HTTP/1.1" 200 4233 "-" "Mozilla/5.0 (Linux; Android 6.0.1; Nexus 5X Build/MMB29P) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.6723.69 Mobile Safari/537.36 (compatible; Googlebot/2.1; +http://www.google.com/bot.html)"
基础知识
Apache2
推荐一个最简单的方法。三行代码搞定。
sudo a2enmod ssl
sudo a2ensite default-ssl
sudo systemctl restart apache2