Tag: Apache

Apache 動態管理 VirtualHost

VirtualHost 可以讓多個網站在一台主機上運行, 一般上每個 VirtualHost 都需要加入一段 “ “, 然後設定 ServerName, ServerAlias 及 DocumentRoot, 例如有兩個網址, 分別是 www.mydomain.com 及 blog.mydomain.com, 在 httpd.conf 部份要加入類似這樣的設定: 另一種方法是動態設定 VirtualHost, 以上面的例子, 可以用一段 設定。 首先開啟 httpd.conf: # vi …

同時安裝多個 PHP 版本

現在 PHP 其中一個很大的問題, 是很多個不同的 PHP 版本都有人使用, 對於開發者需要顧及程式碼是否可以在不同版本執行, 而對系統管理員, 就要面對不同程式可能需要不同 PHP 版本。 以下記錄一下在系統安裝不同 PHP 版本, 並可以按需要設定不同 Virtualhost 或目錄, 可以使用不同 PHP 版本的方法, 以下會以 CentOS 7 及 Apache 作為安裝環境。 首先在系統用 YUM 安裝好 Apache …

找出屬於個別帳號檔案並 chown

今天將一台 CentOS 6 伺服器內所有網站,輚移到另一台 CentOS 7,轉移過程連同檔案權限, owner 及 group 都一同複製,測試後發現多數網站都運作正常,唯獨有用 PHP 建立的檔案及目錄便有寫入失則的問題。 查看了檔案的權限是正確的,但用 “ls -l” 查看那些出問題的檔案及目錄,看到 owner 不是顯示 “apache”, 而是顯示 “80”, 原來 CentOS 6 時 Apache 帳號的 uid 是 80, …

Apache 設定 http to https 轉址

當網站從 http 轉換到 https 後,想自動將前往 http 的訪客自動轉址到 https,可以通過修改 .htaccess 設定mod_rewrite,或者直接編譯 httpd.conf 實現,以下是兩種方法的設定步驟。 .htaccess 例如我想將所有訪客重新導向 https 相應的頁面,只要在 .htaccess 設定即可: 修改後便會生效,不用重新啟動 Apache. httpd.conf 在 httpd.conf 找到 http 的相關 virtualhost, 在段落最後加上以下一行: Redirect …

Apache 開啟 .htaccess 設定

.htaccess 檔案是目錄層面的設定檔, 可以對目錄變更 Apache 的設定, 例如更改 DocumentIndex, 轉址及密碼保護等在 httpd.conf 的設定。 要使用 .htaccess 檔案, 需要在 Apache 的設定檔 (httpd.conf 或 apache2.conf) 開啟使用, 否則 Apache 是不會處理 .htaccess 的設定的。 開啟 .htaccess, 首先開檔 Apache 的設定檔 …

RHEL / CentOS 7 安裝 Apache mod_ssl

以下會記錄在 RHEL 及 CentOS 7 安裝及設定 Apache mod_ssl 的的方法, 以下假設已經使用 YUM 安裝好 Apache, 並會示範安裝自簽憑證及 CA 發行感證的步驟。 首先用 YUM 安裝 mod_ssl: # yum install mod_ssl 安裝好 mod_ssl 後, 系統會自動建立 Apache 的 …

Apache 限制 IP 存取

Apache 內建了限制 IP 存取的功能, 可以設定成禁止某些 IP 不能存問, 或者只允許特定 IP 存取, 以下會以 Apache 2.4 為例, 設定 Apache 的存取限制。 以下假設 /var/www/html/members 目錄, 只允許特定 IP (192.168.1.100 及 192.168.1.101) 存取, 可以透過修改 httpd.conf 或 .htaccess, …

找出存取 Apache 最多的 IP 地址

一台開放的網頁伺服器內, 除了正常的訪問外, 也包括其他像 Search Engine Bots 及惡意攻擊的連接, 這些連接資料都儲存在 Apache 的紀錄檔內。要找出存取 Apache 最多的 IP 地址, 可以透過 awk, sort, uniq 及 head 指令完成。 Apache 預設的紀錄檔位置是: /var/log/httpd/access_log /var/log/apache2/access_log 以下指令會找出紀錄檔內, 連線數量最多的 10 個 IP: …