Tag: Apache

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

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

Apache 設定 http 自動轉址導向 https

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

Apache 開啟 .htaccess 設定

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

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 的 ssl …

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:如果不是要找出最高連線數的 10 個 IP, …

RHEL / CentOS 下 Apache, PHP 及 MySQL 的預設安裝目錄

在 RHEL 及 CentOS 透過 YUM 或 RPM 安裝的套件, 其預設安裝目錄跟編譯安裝有所不同, 以下是 Apache, PHP 及 MySQL (MariaDB) 在 RHEL 及 CentOS 的預設安裝目錄及設定檔位置:Apache:預設安裝目錄: /etc/httpd/ DocumentRoot: /var/www/html/ httpd.conf 路徑: /etc/httpd/conf/httpd.confPHP:php.ini 路徑: /etc/php.ini PHP …

RHEL / CentOS 建立 Apache 虛擬主機

要在一部主機上面存放多個網站, 可以透過 Apache 的 Virtual Host 實現。以下會示範在 RHEL 及 CentOS 建立 Apache Virtual Host 的方法。在開始前, 先要建立存放網站的目錄, 即 Document Root, 在 CentOS 下 Apache 的預設目錄是 /var/www/html, 以下會以 website01.com 及 website02.com 為例, …

RHEL / CentOS 安裝 mod_security

mod_security 是 Apache 的保安模組,可以預防多種針對網頁的攻擊,例如執行遠端程式碼, SQL Injection,路徑掃瞄等。以下是在 RHEL 及 CentOS 安裝 mod_security 的方法:1. 安裝 mod_security 所需套件: # yum install gcc make httpd-devel libxml2 pcre-devel libxml2-devel curl-devel git 2. 下載 mod_security 最新的穩定版源碼,進行編譯及安裝: …