Windows下Apache伺服器中自動設定二級子網域名稱

來源:互聯網
上載者:User

標籤:

今天我們介紹的這個辦法,只需要簡單修改 httpd-vhosts.conf 檔案,配合 .htaccess 檔案即可實現自動設定次層網域。我們這裡以 wpchina.com 為例,以下代碼中的 wpchina.com 都可以替換成你自己想要網域名稱。我們的目標是,不同的子網域名稱可以訪問不同目錄下的網站:
wpchina.com => / ;home.wpchina.com => /home;bbs.wpchina.com => /bbs;…
 
第一步,確認安裝好 Apache 伺服器,並支援 .htaccess 模組(需要開啟mod_rewrite)。你可以參考這裡或這裡,或者直接下載XAMPP,預設支援此功能。 第二步,設定好次層網域。進階一點的可以在路由器裡設定,如dd-wrt路由器支援網域名稱泛解析,會很方便。簡單一些的,直接修改hosts檔案。 開啟 C:\Windows\System32\drivers\etc\hosts 檔案,在最後加入以下三行代碼,並儲存。Win7/Vista使用者記得使用管理員權限編輯此檔案,否則編輯後將無法儲存。 
127.0.0.1            wpchina.com127.0.0.1            home.wpchina.com127.0.0.1            bbs.wpchina.com

第三步,在 httpd-vhosts.conf 檔案中綁定 wpchina.com 網域名稱。 首先取消 NameVirtualHost *:80 程式碼簽署的 # 按照其中的範例,添加以下代碼:
<VirtualHost *:80>    DocumentRoot "/xampp/htdocs/www/wpchina.com"    ServerName wpchina.com    ServerAlias *.wpchina.com</VirtualHost>  

設定之後,重新啟動 Apache 伺服器。 第四步,在網站根目錄 /xampp/htdocs/www/wpchina.com 下建立 .htaccess 檔案,並添加以下代碼:
RewriteEngine on#讓www.wpchina.com 訪問根目錄CMSRewriteCond %{HTTP_HOST} ^www.wpchina.com$RewriteCond %{REQUEST_URI} !^/RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule ^(.*)$ /$1RewriteCond %{HTTP_HOST} ^www.wpchina.com$RewriteRule ^(/)?$ /index.php [L]#讓home.wpchina.com 訪問home目錄RewriteCond %{HTTP_HOST} ^home.wpchina.com$RewriteCond %{REQUEST_URI} !^/home/RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule ^(.*)$ /home/$1RewriteCond %{HTTP_HOST} ^home.wpchina.com$RewriteRule ^(/)?$ home/index.php [L]#讓bbs.wpchina.com 訪問bbs目錄RewriteCond %{HTTP_HOST} ^bbs.wpchina.com$RewriteCond %{REQUEST_URI} !^/wap/RewriteCond %{REQUEST_FILENAME} !-fRewriteCond %{REQUEST_FILENAME} !-dRewriteRule ^(.*)$ /bbs/$1RewriteCond %{HTTP_HOST} ^bbs.wpchina.com$RewriteRule ^(/)?$ bbs/index.php [L] 

第五步,在網站根目錄 /xampp/htdocs/www/wpchina.com 下建立 home, bbs 兩個子目錄。並在每個目錄下放一個 index.php 檔案,檔案內容為:
<?phpecho $_SERVER[‘SCRIPT_FILENAME‘];?>

這時候,你可以試試,分別訪問 wpchina.com, home.wpchina.com, bbs.wpchina.com ,就可以看到不同的訪問結果。 按照上面的辦法,以後如果要增加別的子網域名稱,只要重複第二步和第四步就可以了,不再需要重啟apache,影響到其他網站。 附註:本文所提到的配置子網域名稱的辦法,僅用於測試環境,未進行安全性測試,請勿直接用於生產環境。


轉載於http://wpchina.org

 

Windows下Apache伺服器中自動設定二級子網域名稱

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.