Linux: August 2019 Archives

Installation source
http://mirror01.idc.hinet.net/CentOS/7/os/x86_64/

cURL --resolve

user-pic
Vote 0 Votes

curl 要測試自訂的域名及綁定 IP 通常是在 hosts 設定
curl 在 7.21.3 之後, 加了一個 --resolve 參數, 可以在本身綁定而不需修改 hosts

例:
curl --resolve domain.com:80:192.168.1.1 http://domain.com
curl --resolve domain.com:443:192.168.1.1 https://domain.com
它就會直接去連 192.168.1.1 而不會參考域名的解析

PHP 在 5.5.0 之後 curl_setopt 也加入 CURLOPT_RESOLVE 參數
$ch = curl_init("https://domain.com");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_RESOLVE, array("domain.com:443:192.168.1.1"));
echo curl_exec($ch);

CentOS 6 的 curl 版本是 7.19.7, 不支援, 需升級 libcurl 及 curl
rpm -ivh http://www.city-fan.org/ftp/contrib/yum-repo/rhel6/x86_64/city-fan.org-release-2-1.rhel6.noarch.rpm
yum-config-manager --enable city-fan.org
yum -y update curl

CentOS 7 的 curl 版本是 7.29.0, 已有支援 --resolve, 但若想裝最新版的 curl, 還是可以裝 city-fan.org repo
rpm -ivh http://www.city-fan.org/ftp/contrib/yum-repo/rhel7/x86_64/city-fan.org-release-2-1.rhel7.noarch.rpm
yum-config-manager --enable city-fan.org
yum -y update curl

Caddy Web Server

user-pic
Vote 0 Votes

Caddy Web Server 目的是簡化 SSL 憑證的設定, 它可以做到自動化,
甚至可以幫你自動 Renew, 設定也很簡單, 很適合用在小型網站或測試、開發環境
在網站上選擇好 Plugins 後, 會產生一行安裝指令(如下面這行), 執行後會執行檔會在 /usr/local/bin/caddy,
它是 Go 寫的, 這個執行檔不需要其他相依的 Library
curl https://getcaddy.com | bash -s personal hook.service,http.authz,http.cache,http.expires,http.ipfilter,http.locale,http.login
其中 hook.service 是用來建立服務用的 (-service參數)

建立 Caddy config 及 log 目錄
mkdir /etc/caddy /var/log/caddy

Caddy config 範例檔 /etc/caddy/Caddyfile
有兩個域名, 都有 PHP (需跑 php-fpm 服務)
domain1.com 使用自動憑證, 有開 https 及 http, http 有加 rewrite rule
domain2.com 使用現有憑證, 只開 https

建立服務、啟用、啟動
caddy -service install -agree=true -http2 -quic -log /var/log/caddy/caddy.log -conf=/etc/caddy/Caddyfile
systemctl enable caddy
systemctl start caddy

About this Archive

This page is an archive of entries in the Linux category from August 2019.

Linux: July 2019 is the previous archive.

Linux: February 2020 is the next archive.

Find recent content on the main index or look in the archives to find all content.

Linux: Monthly Archives

Monthly Archives