用Apache反向代理設定對外的WWW和檔案伺服器_PHP教程
簡介:一台機器以專線接入Internet作為防火牆,內部網段上有一台WWW伺服器
(Redhat 6.1,Apache 1.3.9)希望這台機器能對外提供WWW伺服器和基於apache
的文件服務。供外部世界公共存取WWW伺服器,或外地分公司下載所需的檔案。
優點: 內部的WWW伺服器和檔案服務完全與外部世界隔開,不直接連接到外部,透過
防火牆上運行的Apache服務提供對內部的代理訪問,增強了安全性,同時在
防火牆上運行的Apache服務運用基於名字的虛擬主機技術,使得防火牆上的
主頁不會被存取。符合了作為防火牆要求運作服務越少越安全的準則。
實作方法:在內部網段上的Apache伺服器(192.168.11.2)存放的是公司主頁,供內部
和外部用戶公共訪問,並設定/home/ftp/pub目錄為文件存放區域,用
http://download.yourdomain.com/pub/來訪問。
在防火牆上設定apache反向代理技術,由防火牆代理對內部網段上的存取。
步驟:
一. 內部網段上的Apache伺服器設定
apache採用預設設定。主目錄為/home/httpd/html,主機網域為 sun.yourdomain.com,
且別名www.yourdomain.com, 且設定srm.conf加一行別名定義如下:
Alias /pub /home/ ftp/pub/
且更改預設應用程式類型定義如下:
DefaultType application/octet-stream
最後在/etc/httpd/conf/access.conf中增加一項定義
Options Indexes
AllowOverride AuthConfig
order allow,deny
allow from .列出目錄/檔案清單。
AllowOverride AuthConfig允許做基本的使用者名稱和口令驗證。
這樣的話,你需要在/home/ftp/pub目錄下放入.htaccess,內容如下:
-------
[root@shopu pub]# more .htaccess
AuthName Branch Office Public Software Download Area
AuthType Basic
AuthUserFile /etc/.usrpasswd
require valid-4 .usrpasswd user1
分別建立不同的允許存取/pub下檔案服務的外部使用者名稱和口令。
二. 防火牆上反向代理設定:
加上下面的行到/etc/httpd/conf/httpd.conf
NameVirtualHost 1.2.3.4
# 1.2.3.4是防火牆外部網路卡的網路上永久IP位址
servername www.yourdomain.com
errorlog /var/log/httpd/ log/httpd/access_log
rewriteengine on
proxyrequests off
usecanonicalname off
rewriterule ^/(.*)$ http://1off
rewriterule ^/(.*)$ http://192.168.1 >
servername download.yourdomain.com
errorlog /var/log/httpd/download/error_log
transferlog /var/log/httpd/download/access_log9> >usecanonicalname off
rewriterule ^/(.*)$ http://192.168.11.2/$1 [P,L]
附註:設定防火牆上的DNS,讓防火牆上的DNS. comwww.yourdomain.com都指向
防火牆的外部網路卡位址。 www.yourdomain.com防問你的公司首頁, 用
http://download.yourdomain.com/pub/...參募略厙?/a>
你需要在內部網段的apache主機上建立目錄/var/log/httpd/download/目錄,否則會
出錯。另外,你也可以設定防火牆主機上的/home/httpd/html/index.html的屬性為
750
http://www.bkjia.com/PHPjc/314738.html
www.bkjia.com
true

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

要在 Apache 中設置 CGI 目錄,需要執行以下步驟:創建 CGI 目錄,如 "cgi-bin",並授予 Apache 寫入權限。在 Apache 配置文件中添加 "ScriptAlias" 指令塊,將 CGI 目錄映射到 "/cgi-bin" URL。重啟 Apache。

當 Apache 80 端口被佔用時,解決方法如下:找出佔用該端口的進程並關閉它。檢查防火牆設置以確保 Apache 未被阻止。如果以上方法無效,請重新配置 Apache 使用不同的端口。重啟 Apache 服務。

Apache 連接數據庫需要以下步驟:安裝數據庫驅動程序。配置 web.xml 文件以創建連接池。創建 JDBC 數據源,指定連接設置。從 Java 代碼中使用 JDBC API 訪問數據庫,包括獲取連接、創建語句、綁定參數、執行查詢或更新以及處理結果。

有 3 種方法可在 Apache 服務器上查看版本:通過命令行(apachectl -v 或 apache2ctl -v)、檢查服務器狀態頁(http://<服務器IP或域名>/server-status)或查看 Apache 配置文件(ServerVersion: Apache/<版本號>)。

Apache 無法啟動,原因可能有以下幾點:配置文件語法錯誤。與其他應用程序端口衝突。權限問題。內存不足。進程死鎖。守護進程故障。 SELinux 權限問題。防火牆問題。軟件衝突。

如何查看 Apache 版本?啟動 Apache 服務器:使用 sudo service apache2 start 啟動服務器。查看版本號:使用以下方法之一查看版本:命令行:運行 apache2 -v 命令。服務器狀態頁面:在 Web 瀏覽器中訪問 Apache 服務器的默認端口(通常為 80),版本信息顯示在頁面底部。

啟動 Apache 的步驟如下:安裝 Apache(命令:sudo apt-get install apache2 或從官網下載)啟動 Apache(Linux:sudo systemctl start apache2;Windows:右鍵“Apache2.4”服務並選擇“啟動”)檢查是否已啟動(Linux:sudo systemctl status apache2;Windows:查看服務管理器中“Apache2.4”服務的狀態)啟用開機自動啟動(可選,Linux:sudo systemctl

要從 Apache 中刪除多餘的 ServerName 指令,可以採取以下步驟:識別並刪除多餘的 ServerName 指令。重新啟動 Apache 使更改生效。檢查配置文件驗證更改。測試服務器確保問題已解決。
