{"id":44,"date":"2025-10-27T10:11:54","date_gmt":"2025-10-27T02:11:54","guid":{"rendered":"https:\/\/luckyfish.app\/?p=44"},"modified":"2025-11-03T17:40:44","modified_gmt":"2025-11-03T09:40:44","slug":"%e5%be%9e%e9%9b%b6%e9%96%8b%e5%a7%8b%e5%bb%ba%e7%ab%8b%e7%b6%b2%e7%ab%99","status":"publish","type":"post","link":"https:\/\/blog.luckyfish.app\/?p=44","title":{"rendered":"\u5f9e\u96f6\u958b\u59cb\u5efa\u7acb\u7db2\u7ad9"},"content":{"rendered":"\n<ul class=\"wp-block-list\">\n<li><a href=\"#part1\" style=\"text-decoration: none;\">Part 1 &#8211; GCP Server (Google)<\/a><\/li>\n\n\n\n<li><a href=\"#part2\" style=\"text-decoration: none;\">Part 2 &#8211; LAMP (WordPress)<\/a><\/li>\n\n\n\n<li><a href=\"#part3\" style=\"text-decoration: none;\">Part 3 &#8211; Domain Name (CloudFlare)<\/a><\/li>\n<\/ul>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-ca6a830333f36b252112e747d341405f\" style=\"color:#555555\">\u4e00\u76f4\u5728\u601d\u7d22\u5230\u5e95\u8981\u4e00\u7bc7\u6253\u5b8c\uff0c\u9084\u662f\u8aaa\u8981\u5206\u6210\u5e7e\u7bc7\uff0c\u6700\u5f8c\u9084\u662f\u9078\u64c7\u524d\u8005\uff0c\u56e0\u70ba\u61f6\u5f97\u5206\u958b\u4fee\u6539\u54c8\u54c8\uff0c\u76f8\u4fe1\u4e5f\u6709\u4eba\u60f3\u4e00\u6b21\u770b\u5b8c\u4e0d\u60f3\u5206\u958b\u3002<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"part1\">Part 1 &#8211; GCP Server (Google)<\/h2>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-dd4d8fc438bd78db6258fd83735a61de\" style=\"color:#555555\">Part 1 \u9019\u90e8\u5206\u4e3b\u8981\u662f\u53c3\u7167\u9019\u4efd<a href=\"https:\/\/kucw.io\/blog\/gcp-free-tier\/\">\u7b46\u8a18\uff08\u8d85\u9023\u7d50\uff01\uff09<\/a>\uff0cGCP \u5728\u65b0\u7528\u6236\u4eab\u6709 3 \u500b\u6708\u6709 $300 \u7684\u8a66\u7528\uff0c\u8a72\u9023\u7d50\u5206\u4eab\u662f\u6559\u5927\u5bb6\u5982\u679c\u5df2\u7d93\u904e\u4e86\u8a66\u7528\u671f\u9084\u80fd\u4eab\u6709\u514d\u8cbb GCP \u7684\u4f7f\u7528\uff0c\u90a3\u5230\u76ee\u524d\u70ba\u6b62\u90fd\u9084\u662f\u80fd\u5920\u4eab\u6709\u514d\u8cbb\u7684\uff01\u4e0b\u9762\u662f\u6211 1 \u500b\u6708\u4f7f\u7528\u7684\u5e33\u55ae\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"2150\" height=\"1014\" src=\"https:\/\/luckyfish.app\/wp-content\/uploads\/2025\/10\/Screenshot-2025-11-03-at-2.54.25-PM.png\" alt=\"\" class=\"wp-image-168\" style=\"width:700px\"\/><\/figure>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-64087d35b689c05c5b0d092b19a1d1f9\" style=\"color:#555555\">\u6703\u662f\u5148\u8a08\u50f9\u5b8c\u624d\u505a\u8cbb\u7528\u6298\u62b5\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"2794\" height=\"1592\" src=\"https:\/\/luckyfish.app\/wp-content\/uploads\/2025\/10\/Screenshot-2025-11-03-at-2.53.52-PM.png\" alt=\"\" class=\"wp-image-169\" style=\"width:700px\"\/><\/figure>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-7a44427240179d515f3fe491bfdac114\" style=\"color:#555555\">\u5efa\u7acb VM \u7684\u90e8\u5206\u53ef\u4ee5\u67e5\u770b\u90a3\u4efd\u7b46\u8a18\u5206\u4eab\uff01\u9019\u908a\u5c31\u4e0d\u591a\u505a\u8d05\u8ff0\uff0c\u90a3\u6bcf\u6b21\u8981\u4e0b\u6307\u4ee4\u90fd\u8981\u5230\u767b\u5165 google \u9032\u5230 GCP \u958b\u555f CLI \u4ecb\u9762\u624d\u80fd\u55ce\uff1f\u5b8c\u5168\u4e0d\u7528\uff01<\/p>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-29c59695e4317ba9a9d23a31de00abd5\" style=\"color:#555555\">Windows \u7684\u8a71\u958b\u555f CMD\uff0cMacOS\/Linux \u958b\u555f Terminal\uff0c\u57f7\u884c\u4ee5\u4e0b\u6307\u4ee4\uff0c\u4e26\u4e00\u8def enter \u8df3\u904e\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-text-color has-background has-link-color wp-elements-2ebc31efd175a96b26c1ee57c27abe38\" style=\"background-color:#555555\"><code>ssh-keygen -t rsa<\/code><\/pre>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-57e3dfacf191e59fc751560ee61de079\" style=\"color:#555555\">\u63a5\u8457\u9032\u5230 .ssh \u8cc7\u6599\u593e\uff0c\u61c9\u8a72\u6703\u662f\u5728\u5bb6\u76ee\u9304\u7684\u4e0b\u65b9\uff0c\u57f7\u884c\u6642\u6703\u986f\u793a\u5b58\u653e\u8def\u5f91\u3002\u6703\u767c\u73fe id_rsa.pub \u516c\u9470\uff0c\u7b49\u7b49\u8981\u653e\u4e0a GCP\uff1bid_rsa \u79c1\u9470\uff0c\u8981\u81ea\u5df1\u4fdd\u5b58\u597d\uff0c\u4f46\u901a\u5e38\u4e5f\u4e0d\u6703\u53bb\u52d5\u5b83\u3002<\/p>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-d9abeca76eff2a4a067f00092de95c93\" style=\"color:#555555\">\u7136\u5f8c\u67e5\u770b id_rsa.pub \u4e26\u5f9e ssh-rsa \u53cd\u767d\u5230\u5e95\u8907\u88fd\u8d77\u4f86\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-text-color has-background has-link-color wp-elements-32c21c16d4fa074fbb691454a738cba7\" style=\"background-color:#555555\"><code>cat id_rsa.pub<\/code><\/pre>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-30151e148fe90aaa669b550d00a997a4\" style=\"color:#555555\">\u63a5\u8457\u5728 GCP \u5de6\u65b9\u9078\u55ae\u7684\u6700\u4e0b\u9762 > \u4e2d\u7e7c\u8cc7\u6599 > \u5b89\u5168\u6bbc\u5c64\u91d1\u9470 > \u65b0\u589e\u9805\u76ee\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1444\" height=\"1568\" src=\"https:\/\/luckyfish.app\/wp-content\/uploads\/2025\/10\/Screenshot-2025-11-03-at-3.20.02-PM.png\" alt=\"\" class=\"wp-image-174\" style=\"width:700px\"\/><\/figure>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-9c22307c4461700aa39233e36ea04f14\" style=\"color:#555555\">\u5c07\u525b\u525b\u8907\u88fd\u7684\u516c\u9470\u8cbc\u4e0a\u4e26\u5132\u5b58\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1016\" height=\"500\" src=\"https:\/\/luckyfish.app\/wp-content\/uploads\/2025\/10\/Screenshot-2025-11-03-at-3.23.32-PM.png\" alt=\"\" class=\"wp-image-175\" style=\"width:700px\"\/><\/figure>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-0d421ae38d7b6037e455a496dbcfb32b\" style=\"color:#555555\">\u7136\u5f8c\u5728 CMD \u6216 Terminal ssh GCP \u5916\u90e8 IP \u5c31\u80fd\u9023\u4e0a\u4e86\uff01btw \u9019\u500b\u5916\u90e8 IP \u5f8c\u9762\u8a2d\u5b9a Cloudflare DNS \u9084\u6703\u7528\u5230 ~<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1950\" height=\"518\" src=\"https:\/\/luckyfish.app\/wp-content\/uploads\/2025\/10\/Screenshot-2025-11-03-at-3.30.13-PM.png\" alt=\"\" class=\"wp-image-178\" style=\"width:700px\"\/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"1110\" height=\"844\" src=\"https:\/\/luckyfish.app\/wp-content\/uploads\/2025\/10\/Screenshot-2025-11-03-at-3.25.18-PM.png\" alt=\"\" class=\"wp-image-176\" style=\"width:700px\"\/><\/figure>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-575788891c8c6d4217183c80515e7b39\" style=\"color:#666666\">\u4e4b\u5f8c\u5c31\u80fd\u76f4\u63a5\u900f\u904e ssh \u4f86\u64cd\u4f5c\u4f60\u7684 Server \u5566\uff0c\u662f\u4e0d\u662f\u5f88\u65b9\u4fbf\uff01<\/p>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-b8a55f91da0ebb4db200af2402206300\" style=\"color:#555555\">\u90a3\u9ebc\u7b2c\u4e00\u90e8\u5206\u5c31\u7d50\u675f\u4e86\uff0c\u8b93\u6211\u5011\u4f86\u9032\u5230\u7b2c\u4e8c\u90e8\u5206\u3002<\/p>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"part2\">Part 2 &#8211; LAMP (WordPress)<\/h2>\n\n\n\n<pre class=\"wp-block-code\"><code><\/code><\/pre>\n\n\n\n<hr class=\"wp-block-separator has-alpha-channel-opacity\"\/>\n\n\n\n<h2 class=\"wp-block-heading\" id=\"part3\">Part 3 &#8211; Domain Name (Cloudflare)<\/h2>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-4764544d8c9835aeebf9aae11a0e4c16\" style=\"color:#555555\">Part 3 \u9019\u90e8\u5206\u6211\u662f\u76f4\u63a5\u9078\u64c7\u5728 Cloudflare \u8cfc\u8cb7\u6211\u7684 domain name\uff0c\u8981\u5728\u5176\u4ed6\u5730\u65b9\u8cfc\u8cb7\u4e5f\u53ef\u4ee5\u7684\u3002<\/p>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-f8be141ab992380df3c87e9153cdc48d\" style=\"color:#555555\">\u767b\u5165\u5f8c\u53ef\u4ee5\u76f4\u63a5\u5728\u5de6\u908a\u9078\u55ae &gt; \u7db2\u57df\u8a3b\u518a &gt; \u8a3b\u518a\u7db2\u57df\uff0c\u9078\u64c7\u4f60\u60f3\u8981\u7684 domain name \u505a\u8cfc\u8cb7\uff0c\u4fbf\u5b9c\u8ddf\u8cb4\u7684\u90fd\u6709\uff0c\u4ee5\u6211\u7684 luckyfish.app \u70ba\u4f8b\uff0c\u4e00\u5e74\u53ea\u8981 $14.2 \u5927\u6982 NT$450\uff0c\u5982\u679c\u53ea\u662f\u50cf\u6211\u5f04\u500b\u5c0f\u7db2\u7ad9\u6216\u8005\u958b\u767c\uff0c\u61c9\u8a72\u9084\u662f\u8ca0\u64d4\u5f97\u8d77\u7684\uff0c\u4ee5\u4e0b\u5c31\u7701\u7565\u8cfc\u8cb7\u904e\u7a0b\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized is-style-default\"><img loading=\"lazy\" decoding=\"async\" width=\"2210\" height=\"1566\" src=\"https:\/\/luckyfish.app\/wp-content\/uploads\/2025\/10\/Screenshot-2025-10-30-at-11.47.09-AM.png\" alt=\"\" class=\"wp-image-116\" style=\"width:700px\"\/><\/figure>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-b9750e952eff9a8cf45fc5ef560342a6\" style=\"color:#555555\">\u8cfc\u8cb7\u5f8c\u5728\u5de6\u908a\u9078\u55ae &gt; \u7db2\u57df\u8a3b\u518a &gt; \u7ba1\u7406\u7db2\u57df\uff0c\u5728\u4f60\u8cfc\u8cb7\u7684\u7db2\u57df\u6e05\u55ae\uff0c\u9ede\u64ca\u7ba1\u7406<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"2128\" height=\"1064\" src=\"https:\/\/luckyfish.app\/wp-content\/uploads\/2025\/10\/Screenshot-2025-10-30-at-11.52.23-AM.png\" alt=\"\" class=\"wp-image-118\" style=\"width:700px\"\/><\/figure>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-8cc35e05c31d7928f91dab63c4fb374d\" style=\"color:#555555\">\u53f3\u908a\u9078\u55ae &gt; \u5feb\u901f\u52d5\u4f5c &gt; \u66f4\u65b0 DNS \u8a2d\u5b9a<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"2112\" height=\"1178\" src=\"https:\/\/luckyfish.app\/wp-content\/uploads\/2025\/10\/Screenshot-2025-10-30-at-2.12.06-PM.png\" alt=\"\" class=\"wp-image-119\" style=\"width:700px\"\/><\/figure>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-91202c8429483788a0c085709719d498\" style=\"color:#555555\">\u63a5\u4e0b\u4f86\u8981\u8a2d\u5b9a DNS \u7d00\u9304\u8ddf server\uff0c\u5927\u5bb6\u624d\u80fd\u4f7f\u7528\u4f60\u7684\u7db2\u5740\u7167\u8a2a\u4f60\u7684\u7db2\u7ad9\u3002<\/p>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-f7b48ef9be50c3c7c614bd628d205a8e\" style=\"color:#555555\">\u9996\u5148\u8a2d\u5b9a DNS\uff0c\u9019\u908a\u6211\u5df2\u7d93\u6709\u65b0\u589e\u4e09\u500b\u7d00\u9304\uff0c\u57fa\u672c\u4e0a\u5c31\u662f\u9ede\u64ca &#8220;\u65b0\u589e\u7d00\u9304&#8221; \u505a\u65b0\u589e\u52d5\u4f5c\uff0cProxy \u72c0\u614b\u90fd\u9078\u64c7\u958b\u555f\uff0c\u6bd4\u8f03\u5b89\u5168\uff0c\u8a3b\u89e3\u53ef\u4ee5\u4e0d\u8a2d\u5b9a\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"2062\" height=\"784\" src=\"https:\/\/luckyfish.app\/wp-content\/uploads\/2025\/10\/Screenshot-2025-10-30-at-2.14.24-PM.png\" alt=\"\" class=\"wp-image-120\" style=\"width:700px\"\/><\/figure>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-d1f99f5857165de86beeb4863e5e7534\" style=\"color:#555555\">\u7b2c\u4e00\u7a2e\uff0c\u9019\u908a\u4ee5\u6211 luckyfish.app \u505a\u8209\u4f8b\uff0c\u82e5\u60f3\u8981\u7db2\u7ad9\u70ba luckyfish.app \u4f5c\u70ba\u7db2\u5740\uff0c\u985e\u578b\u9078\u64c7 A\uff0c\u540d\u7a31\u8a2d\u5b9a\u70ba @\uff0c\u586b\u4e0a\u524d\u9762\u6709\u63d0\u5230\u7684 GCP Server \u5916\u90e8 IP\uff08\u4e5f\u5c31\u662f SSH \u4f5c\u9023\u7dda\u7684 IP\uff09\uff0c\u5132\u5b58\u5f8c\u5c31\u8a2d\u5b9a\u5b8c\u6210\u4e86\uff01<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"2034\" height=\"366\" src=\"https:\/\/luckyfish.app\/wp-content\/uploads\/2025\/10\/Screenshot-2025-10-30-at-2.28.11-PM.png\" alt=\"\" class=\"wp-image-121\" style=\"width:700px\"\/><\/figure>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-a97286287943530ff5e60047ff13c781\" style=\"color:#555555\">\u7b2c\u4e8c\u7a2e\uff0c\u63a5\u4e0b\u4f86\u4f60\u5e0c\u671b\u6709\u4eba\u8f38\u5165 www.luckyfish.app \u4e5f\u80fd\u9023\u5230 luckyfish.app \u7684\u8a71\uff0c&#8221;\u518d&#8221; \u65b0\u589e\u4e00\u500b\u7d00\u9304\uff0c\u985e\u578b\u9078\u64c7 CNAME\uff0c\u540d\u7a31\u8a2d\u5b9a\u70ba www\uff0c\u76ee\u6a19\u8a2d\u5b9a\u70ba luckyfish.app\uff0c\u90a3\u9ebc\u53ea\u8981\u8f38\u5165 www.luckyfish.app \u4e5f\u80fd\u9023\u5230 luckyfish.app \u9019\u500b\u7db2\u7ad9\u5566\uff01<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"2046\" height=\"364\" src=\"https:\/\/luckyfish.app\/wp-content\/uploads\/2025\/10\/Screenshot-2025-10-30-at-2.31.16-PM.png\" alt=\"\" class=\"wp-image-122\" style=\"width:700px\"\/><\/figure>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-553ccef0b61fbcdad7d3c551c1f79a36\" style=\"color:#555555\">\u7b2c\u4e09\u7a2e\u5c31\u662f\u4f60\u5e0c\u671b\u8cfc\u8cb7\u7684\u57df\u540d\u4e0d\u53ea\u6709\u4e00\u500b\u7db2\u7ad9\uff0c\u50cf\u662f\u4f5c\u70ba api\u3001dev \u7b49\u7b49\uff0c\u7a31\u70ba\u5b50\u57df\u540d\u3002&#8221;\u518d&#8221; \u65b0\u589e\u4e00\u500b\u7d00\u9304\uff0c\u985e\u578b\u4e00\u6a23\u9078\u64c7 A\uff0c\u540d\u7a31\u8a2d\u5b9a\u70ba api\u3001dev \u7b49\u7b49\uff0c\u586b\u4e0a GCP Server \u5916\u90e8 IP \u4e00\u6a23\u4e0d\u66f4\u52d5\uff0c\u5132\u5b58\u5f8c\u5c31\u5b8c\u6210\u4e86\u3002<\/p>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-3b8ade7a84d585cfb320feb4ec638cf5\" style=\"color:#555555\">\u50cf\u9019\u908a\u6211\u8a2d\u5b9a\u4e86\u4e00\u500b <a href=\"https:\/\/dev.luckyfish.app\">dev.luckyfish.app<\/a> \u4f9b\u81ea\u5df1\u505a\u958b\u767c\u4f7f\u7528\uff0c\u53ea\u662f\u6211\u6709\u7528 403 \u64cb\u4e0b\u4f86\u3002<\/p>\n\n\n\n<figure class=\"wp-block-image size-full is-resized\"><img loading=\"lazy\" decoding=\"async\" width=\"2042\" height=\"336\" src=\"https:\/\/luckyfish.app\/wp-content\/uploads\/2025\/10\/Screenshot-2025-10-30-at-2.32.10-PM.png\" alt=\"\" class=\"wp-image-123\" style=\"width:700px\"\/><\/figure>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-691e2b9a3e04a0055c0c38e2c9170689\" style=\"color:#555555\">DNS \u7684\u8a2d\u5b9a\u5b8c\u6210\u4e86\uff0c\u63a5\u4e0b\u4f86\u5c31\u662f Server \u7684\u90e8\u5206\uff0cServer \u7684\u90e8\u5206\u5f88\u7c21\u55ae\uff0c\u53ea\u9700\u8981\u4fee\u6539\u8a2d\u5b9a\u6a94\u5167\u7684\u7db2\u5740\uff0c\u4e26\u91cd\u65b0\u555f\u52d5\u5c31\u5b8c\u6210\u4e86\u3002<\/p>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-282f6b994b3d24ff6c282a56b1e5f012\" style=\"color:#555555\">\u8a2d\u5b9a\u6a94\u7684\u8def\u5f91\u70ba \/etc\/apache2\/sites-available\uff0c\u9078\u64c7\u4f60\u524d\u9762\u6240\u8a2d\u5b9a\u7684\u8a2d\u5b9a\u6a94\uff0c\u57fa\u672c\u4f9d\u7167\u4e0b\u9762\u6a94\u6848\u66f4\u6539 domain name \u5373\u53ef\u3002<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-text-color has-background has-link-color wp-elements-9df727562e84afe7b30626f9402e8d90\" style=\"background-color:#555555\"><code># 80 \u2192 \u5168\u7ad9\u6539\u7528 HTTPS + \u6536 www\n&lt;VirtualHost *:80&gt;\n    ServerName luckyfish.app\n    ServerAlias www.luckyfish.app\n    Redirect permanent \/ https:\/\/luckyfish.app\/\n&lt;\/VirtualHost&gt;\n\n# 443 \u6b63\u7ad9\uff08luckyfish.app\uff09\n&lt;VirtualHost *:443&gt;\n    ServerName luckyfish.app\n    DocumentRoot \/var\/www\/html\/wordpress\n\n    SSLEngine on\n    SSLCertificateFile \/etc\/apache2\/ssl\/public.pem\n    SSLCertificateKeyFile \/etc\/apache2\/ssl\/private.key\n\n    &lt;Directory \/var\/www\/html\/wordpress&gt;\n        AllowOverride All\n        Require all granted\n    &lt;\/Directory&gt;\n\n    ErrorLog  ${APACHE_LOG_DIR}\/luckyfish_error.log\n    CustomLog ${APACHE_LOG_DIR}\/luckyfish_access.log combined\n&lt;\/VirtualHost&gt;\n\n# 443 \u7684 www \u2192 301 \u5230 apex\uff08\u4fdd\u96aa\u4f5c\u6cd5\uff09\n&lt;VirtualHost *:443&gt;\n    ServerName www.luckyfish.app\n    SSLEngine on\n    SSLCertificateFile \/etc\/apache2\/ssl\/public.pem\n    SSLCertificateKeyFile \/etc\/apache2\/ssl\/private.key\n    Redirect permanent \/ https:\/\/luckyfish.app\/\n&lt;\/VirtualHost&gt;\n\nRedirectMatch 404 \/\\\\.(svn|git|hg|bzr|cvs)(\/|$)<\/code><\/pre>\n\n\n\n<p class=\"has-text-color has-link-color wp-elements-da1b479fe1c16016894798277d3fe36a\" style=\"color:#555555\">\u6700\u5f8c\u91cd\u65b0\u8f09\u5165 apache2\uff0c\u5c31\u5b8c\u6210\u4e86\uff01<\/p>\n\n\n\n<pre class=\"wp-block-code has-white-color has-text-color has-background has-link-color wp-elements-a731e61fc8b74bdd4db76e97584b82cc\" style=\"background-color:#555555\"><code>sudo systemctl reload apache2<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>\u4e00\u76f4\u5728\u601d\u7d22\u5230\u5e95\u8981\u4e00\u7bc7\u6253\u5b8c\uff0c\u9084\u662f\u8aaa\u8981\u5206\u6210\u5e7e\u7bc7\uff0c\u6700\u5f8c\u9084\u662f\u9078\u64c7\u524d\u8005\uff0c\u56e0\u70ba\u61f6\u5f97\u5206\u958b\u4fee\u6539\u54c8\u54c8\uff0c\u76f8\u4fe1\u4e5f\u6709\u4eba\u60f3\u4e00\u6b21\u770b\u5b8c\u4e0d\u60f3\u5206 [&hellip;]<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":true,"template":"","format":"standard","meta":{"footnotes":""},"categories":[8,3],"tags":[6],"class_list":["post-44","post","type-post","status-publish","format-standard","hentry","category-linux","category-3","tag-6"],"_links":{"self":[{"href":"https:\/\/blog.luckyfish.app\/index.php?rest_route=\/wp\/v2\/posts\/44","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.luckyfish.app\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.luckyfish.app\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.luckyfish.app\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.luckyfish.app\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=44"}],"version-history":[{"count":51,"href":"https:\/\/blog.luckyfish.app\/index.php?rest_route=\/wp\/v2\/posts\/44\/revisions"}],"predecessor-version":[{"id":166,"href":"https:\/\/blog.luckyfish.app\/index.php?rest_route=\/wp\/v2\/posts\/44\/revisions\/166"}],"wp:attachment":[{"href":"https:\/\/blog.luckyfish.app\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=44"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.luckyfish.app\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=44"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.luckyfish.app\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=44"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}