快轉到主要內容
  1. Posts/

InfinityFree免費虛擬主機:PHP網站架設完整教學

·432 字
網站架設 PHP Tutorial InfinityFree PHP 網站架設 MySQL SSL HTTPS 免費虛擬主機

前言
#

這篇文章將帶你一步步使用 InfinityFree,一個完全免費的網站託管平台,來建立屬於自己的 PHP 網站。從註冊帳號、設定域名、上傳網站檔案,到資料庫配置與 SSL 憑證 安裝,全流程詳細圖解,讓你輕鬆完成網站部署。不論是學習 PHP、架設個人部落格,還是嘗試開發動態網站,這篇指南都能幫助你快速上手!

InfinityFree簡介
#

InfinityFree 是一個 完全免費 的網站託管平台,提供 網站空間與流量,並且 無需信用卡額外費用。它允許使用者 自訂域名 或選擇 免費子域名,並支援 PHP 與 MySQL 資料庫,適合架設 個人部落格、作品展示、簡易動態網站 等應用。此外,它 不會在你的網站上放置廣告,但預設 不提供 SSL(HTTPS),需要手動設定免費憑證。整體來說,這是一個 適合初學者或開發者測試專案 的免費虛擬主機服務。

適用範圍
#

這篇文章適用於本地端已經有php、html或是wordpress等專案,要移植到 InfinityFree 的情況。

1. 註冊並選擇免費方案
#

首先,進入 InfinityFree 註冊頁面,註冊一個新帳戶。選擇免費方案後,你將能夠開始建立自己的網站,享受 無流量限制多網站托管 的服務。

Image

2. 選擇子域名或使用自訂網域
#

你可以選擇 InfinityFree 提供的免費子域名,或者綁定 自己的網域名稱。免費子域名有多種可選擇的後綴,但如果你有個人專屬網域,可以透過 DNS 設定 綁定至 InfinityFree,讓網站更具專業感。

Image

3. 建立網站名稱與 FTP 密碼
#

接下來,設定你的 網站名稱FTP 帳號密碼。FTP 是用來上傳網站檔案的重要工具,你稍後可以透過 FTP 軟體(如 FileZilla) 或 InfinityFree 提供的線上檔案管理器來管理你的網站內容。

Image

這是FTP帳號密碼

Image

4. 建立與管理 MySQL 資料庫
#

如果你的網站需要儲存使用者資訊、文章內容等數據,就需要建立一個 MySQL 資料庫。InfinityFree 提供免費的 phpMyAdmin 介面,讓你可以直接上傳 .sql 檔案,或者手動執行 SQL 語法來建立資料表。

Image

資料庫登入資訊在這裡,準備好你的.sql 檔案,進入到 phpmyadmin

Image

上傳你的.sql 檔案,或是直接複製sql 語法來建立資料

Image

這是一個範例的sql file,注意需要在 USE資料庫 的部分替換為 他給你的資料庫名稱

-- 傾印 final 的資料庫結構
# CREATE DATABASE IF NOT EXISTS `final` /*!40100 DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci */ /*!80016 DEFAULT ENCRYPTION='N' */;
#USE `final`;
USE `if0_123456_final`;

-- 傾印  資料表 final.menu_items 結構
CREATE TABLE IF NOT EXISTS `menu_items` (
  `item_id` int NOT NULL AUTO_INCREMENT,
  `restaurant_id` int NOT NULL,
  `name` char(50) COLLATE utf8mb4_general_ci NOT NULL,
  `description` text COLLATE utf8mb4_general_ci NOT NULL,
  `price` int NOT NULL,
  PRIMARY KEY (`item_id`) USING BTREE,
  KEY `FK_menu_restaurant_restaurant_id` (`restaurant_id`),
  CONSTRAINT `FK_menu_restaurant_restaurant_id` FOREIGN KEY (`restaurant_id`) REFERENCES `restaurants` (`restaurant_id`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=91 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_general_ci;

5. 上傳你的 PHP 檔案並設定資料庫
#

當你有自己的 PHP 檔案(如網站前端、後端 API)時,需要將它們上傳到 InfinityFree 的 FTP 伺服器。確保在程式碼中,正確設定資料庫名稱、帳號與密碼,以便與 MySQL 資料庫連線。

<?php
// 定義數據庫資訊
$servername = "sql3312.infinityfree.com"; # infinityfree init
$username = "if0_3831331132093"; # infinityfree init
$password = "infinityfree pass"; # infinityfree  
$dbname = "if0_123332456_final"; # 剛剛建立的db

// Connect MySQL server
$conn = new mysqli($servername, $username, $password, $dbname);
			
// set up char set
if (!$conn->set_charset("utf8")) {
    printf("Error loading character set utf8: %s\n", $conn->error);
    exit();
}

// Check connection
if ($conn->connect_error) {
    die("Connection failed: " . $conn->connect_error);
} 

?>

6. 移除預設首頁,讓你的網站正式上線
#

InfinityFree 會自動生成一個 index2.html 頁面作為預設首頁,為了讓你的網站順利顯示,請刪除 index2.html,並確保 index.php 或 index.html 為你的主頁。

Image

範例如下,這是已經上傳好的狀態。

Image

也可以透過 FileZilla 等軟體去上傳你的檔案

Image

上傳成功後,就可以去看看建立好的網站了,例如: xxx.kesug.com

Image

7. 啟用 SSL 憑證,讓網站支援 HTTPS
#

InfinityFree 預設不支援 HTTPS,但你可以透過 Google Trust SSL 憑證 來啟用 安全加密連線。首先選擇 Add SSL Certificate

Image

這裡選擇 google trust

Image

按下Setup CNAME Records,接著等待一下

Image

如果出現以下畫面,等待CNAME成功後就可以按下去

Image

等待他檢查你的網域名稱

Image

再按下 Install SSL Certificate Automatically

Image

最後都好了就會顯示成功

Image

回到首頁看看,應該就會兩個都顯示啟動中,如果還沒顯示就稍等一下。

Image

8. 完成網站部署,開始探索你的免費主機!
#

現在,你的 PHP 網站 已經成功運行,並可透過 HTTPS 安全連線存取。無論你是想架設個人部落格、展示作品,或是開發小型應用程式,InfinityFree 都是一個 免費且簡單易用 的選擇!

Image

補充:修正 HTTPS 轉址問題(.htaccess 設定)
#

若安裝 SSL 後,仍無法順利透過 https:// 存取網站,你可以在 .htaccess 檔案內加入 301 轉址規則,強制將所有 HTTP 請求導向 HTTPS。

##################################################
#
# DO NOT EDIT THIS FILE
#
# Create a new .htaccess file in your htdocs
# directory (or example.com/htdocs/ directory)
# to add your own rules or override these rules.
#
##################################################


DirectoryIndex index.php index.html index.htm index2.html

ErrorDocument 403 https://errors.infinityfree.net/errors/403/
ErrorDocument 404 https://errors.infinityfree.net/errors/404/
ErrorDocument 500 https://errors.infinityfree.net/errors/500/

# add this
RewriteEngine On
RewriteCond %{HTTP:X-Forwarded-Proto} !https
RewriteCond %{HTTPS} off
RewriteCond %{HTTP:CF-Visitor} !{"scheme":"https"}
RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

結論
#

透過這篇完整的教學,你可以從零開始架設一個動態 PHP 網站,體驗 免費主機 的便利性。

作者
Ernie

相關文章

在 macOS Apple Silicon 上設定 C_C++ 開發環境
·165 字
C/C++ macOS 開發環境 Tutorial C++ C macOS Xcode VS Code Apple Silicon
教你如何在 macOS Apple Silicon 上設定 C/C++ 開發環境,使用 Xcode 和 VS Code。
Raspberry Pi OS 安裝與設定
·202 字
Raspberry Pi Linux Tutorial IOT Raspberry Pi balenaEtcher SSH Raspberry Pi OS
安裝及設定 Raspberry Pi OS 的完整指南。
免費、安全的VPN:用Oracle Cloud和Outline輕鬆建置
·112 字
網路安全 VPN Oracle Cloud VPS Tutorial VPN Oracle Cloud Outline 免費VPN VPS
利用Oracle Cloud免費資源和Outline工具,輕鬆建立安全可靠的個人VPN,保護你的網路隱私。