linuxapache綁定域名訪問
『壹』 linux伺服器如何綁定域名
使用一鍵安裝包配置的apache環境,添加網站配置方法如下:
1.命令:cd /alidata/server/httpd/conf/vhosts/
進入網站的配置文件目錄
2.命令:vi aa.conf
創建一個新的配置文件
3.按鍵盤上的字母 「i」 ,開始編輯文件,將下面的內容復制過去。
Order allow,deny
Deny from all
DocumentRoot /alidata/www/test
ServerName www.test.com
ServerAlias test.com
Options Indexes FollowSymLinks
AllowOverride all
Order allow,deny
Allow from all
RewriteEngine On
RewriteRule ^(.*)-htm-(.*)$ $1.php?$2
RewriteRule ^(.*)/simple/([a-z0-9\_]+\.html)$ $1/simple/index.php?$2
ErrorLog "/alidata/log/httpd/test-error.log"
CustomLog "/alidata/log/httpd/test.log" common
對應自己的
ServerName www.test.com 綁定的網站域名
ServerAlias test.com 綁定的網站別名(您如果有多個域名添加在這里)沒有的話,這個可以刪除。
DirectoryIndex index.html index.php index.htm 設置默認首頁
DocumentRoot /alidata/www/test 和 Directory "/alidata/www/test" 和 DirectoryMatch "/alidata/www/test/都是指定網站的目錄,需要一致。
ErrorLog "/alidata/log/httpd/test-error.log" 和 CustomLog "/alidata/log/httpd/test.log" 對應的日誌名字也需要自己修改一下,可以區分網站的日誌信息。
4.輸入命令:/alidata/server/httpd/bin/apachectl restart 重啟apache測試。
『貳』 誰會wdcp linux管理系統 設置啊 綁定了域名無法訪問
檢查有沒站點配置文件後台 》系統管理 》戚寬文件管理器 》虛擬主機站點文件(nginx,apache) 點擊進去,進入到vhost目高搜亮錄,看是否有相應的配置文件
文件名以創建站點時用的域名加後綴.conf,如wdlinux.conf
或者看看是不是安裝沒有完成 最好刪了重新漏如安裝一次
『叄』 如何在Linux下使用Apache服務綁定域名
我apache提供沖瞎web服務散豎。如果你要綁定域名的話,可以沖判大去域名的後台管理進行綁定。如果是在自己的電腦上的話,可以安裝dns伺服器。
『肆』 怎樣綁定linux的主機頭,只能使用域名訪問,IP訪問不到的
綁定linux的主機頭,只能使用域名訪問,IP訪問不到,可以通過修改httpd.conf文件來實現。
方法一:
在httpd.conf文件最後面,加入以下代碼
NameVirtualHost 211.*.*.*
<VirtualHost 211.*.*.*>
ServerName 211.*.*.*
<Location />
Order Allow,Deny
Deny from all
</Location>
</VirtualHost>
<VirtualHost 211.*.*.*>
DocumentRoot "網站路徑"
ServerName 網站域名
</VirtualHost>
說明:上面部分是實現拒絕直接通過211.*.*.*這個IP的任何訪問請求,這時如果你用211.*.*.*訪問,會提示拒絕訪問。下面部分就是允許通過http://網站域名/這個域名訪問,主目錄指向"網站路徑"。
方法二:
在httpd.conf文件最後面,加入以下代碼
NameVirtualHost 211.*.*.*
<VirtualHost 211.*.*.*>
DocumentRoot "網站路徑"
ServerName 211.*.*.*
</VirtualHost>
<VirtualHost 211.*.*.*>
DocumentRoot "網站路徑"
ServerName http://網站域名
</VirtualHost>
說明:上面部分是把通過211.*.*.*這個IP直接訪問的請求指向"網站路徑"目錄下。
『伍』 Apache如何綁定域名
你是用apache做虛哪明擬主機嗎? 如果是單獨一個網站,不需要綁定就可以訪問,如果檔凱只限制一個域名訪問的話,在httpd.conf搜索Listen 80 將其改為 Listen 域名:80 即可。如果是做虛擬主機,需要在httpd.conf最後加上像行緩喚下面這樣的設置:
『陸』 linux 雲主機已經配置了apache 如何綁定域名求命令和步驟。
綁定域名是在apache配置文件里做的,一般vhosts.cfg打開修改就可以。這是做虛擬主機的例子。
『柒』 linux伺服器怎樣綁定域名
一、DNS伺服器的設置
我們知道互聯網網是基於TCP/IP協議的,要進行通信必須獲得對方的IP地址,這是通過DNS伺服器來實現的。因此要想實現虛擬域名首先應當令DNS伺服器接受該虛擬域名,即把它映射到指定的IP地址上。因為我們靠Web伺服器來區分域名,所以這個IP地址自然應當是Web伺服器所管理的。
RedHat6.0操作系統中捆綁有BIND DNS伺服器。它的域名配置文件是」/etc/named.conf」,一般情況下,域配置文件放在」/var/named」目錄下面。
例1、named.conf文件的配置:
zone 「domain.com」 {
type master;
file 「domain.com」;
};
zone 「0.10.10.in-addr.arpa」 {
type master;
file 「10.10.0〃;
};
該例子說明」domain.com」的域配置文件是」/var/named/domain.com」,反向域的配置文件是」/var/named/10.10.0〃。domain.com文件負責把DNS域名映射為IP地址。
例2、domain.com文件配置:
@ IN SOA dns.domain.com. hostmaster.dns.domain.com. (
1998111003 ; serial
3600 ; refresh
900 ; retry
1209600 ; expire
43200 ; default_ttl
)
@ IN MX 10 dns.domain.com.
@ IN NS dns.domain.com.
@ IN A 10.10.0.1
www IN A 10.10.0.1
假定要增加的域名是aaa.domain.com,想要指到www.domain.com,DNS服務中應增加一個別名記錄,可寫成:
aaa IN CNAME www.domain.com.
如果需要配置大量的虛擬域名,domain.com文件要很大,而且也相當麻煩。我們可以使用符號 「*」 ,即在 domain.com 文件中加入:
* IN CNAME www.domain.com.
這樣它就把所有沒給出設置的以domain.com結尾的記錄全部轉到www.domain.com去了,不管是aaa.domain.com還是bbb.domain.com。這不會影響已有的記錄。配置好DNS伺服器後應該重新啟動守護進程named:
[root@domain /root]# /etc/rc.d/init.d/named restart
二、Apache伺服器的配置
Apache伺服器是目前互聯網上使用最多的Web伺服器,它可以維護非常繁忙的站點。RedHat 6.0捆綁了Apache Web Server 1.3。它的配置文件位於」/etc/httpd/conf」目錄下,有httpd.conf、srm.conf、access.conf,下面討論一下與虛擬域名有關的配置:
1、靜態配置
修改配置文件 httpd.conf 的步驟:
(1) 首先設置UseCanonicalName為off。它指示用伺服器Host:header的內容代替ServerName 的值來提供給環境變數SERVER_NAME。
(2) 然後加入:
NameVirtualHost xxx.xxx.xxx.xxx其中xxx.xxx.xxx.xxx為所要配置的虛擬伺服器的IP地址。在此可配置多個虛擬IP地址,當然要與DNS伺服器中的配置一致。(注意:這里要用IP地址,不能用域名。)
(3) 接下來為每個虛擬域名加入一段記錄:
< virtualhost xxx.xxx.xxx.xxx>
…..
< /virtualhost>
xxx.xxx.xxx.xxx要和NameVirtualHost配置的IP地址一致。在兩個標志之間可加入的配置參數有:
ServerName後面跟你要增加的虛擬域名,如aaa.domain.com ;
Documentroot如果你映射到本機的路徑就加在後面,如」/home/aaa」 ;
redirect如果你映射到遠端的URL可加在後面,有兩個參數,第一個是虛擬域名的相對路徑,第二個是遠端站點的URL;
ServerAlias後可加入本域名的別名,可使用通配符,如*.aaa.domain.com 。
下面舉兩個例子:
例3、映射到本機的物理路徑:
< virtualhost xxx.xxx.xxx.xxx>
DocumentRoot 「/home/test」
ServerName test.domain.com
< virtualhost>
例4、映射到遠端的URL:
< virtualhost xxx.xxx.xxx.xxx>
ServerName test1.doamin.com
redirect / http://test.domain1.com/welcome.htm
< /virtualhost>
還有一些參數,象log文件的位置、超時的設置、緩沖區的設置等等,在此不一一介紹,可以參考Apache伺服器的在線幫助文件。配置好httpd.conf文件後需要重新啟動Apache的後台守護進程httpd,
[root@domain /root]# /etc/rc.d/init.d/httpd restart
每增加一個虛擬域名就要增加一段位於 < VirtualHost...>…< /VirtualHost> 之間的配置代碼,而且只有在重新啟動 httpd 後新配置才能生效。
2、動態配置
可以發現,如果要配置大量的虛擬域名將大大增加配置文件的長度,這樣還會使Apache啟動變慢,佔用更多的內存,而且也不容易實現在線申請。可以通過選擇動態方式來配置。這樣不必事先寫好配置,而是通過編寫一定的動態規則來自動生成或隨時從獨立的配置文件中讀取信息。
Apache有一個強大的擴展功能,即模塊(Moles)的特性。模塊可對伺服器的功能進行擴充,它在運行和使用時才裝入伺服器,這樣比一直放入伺服器中要節省內存空間,同時也比調用外部CGI程序速度快。
現在使用一個功能強大的模塊來實現動態配置虛擬域名,這就是mod_rewrite。它負責偵聽從客戶機送出的URL地址,並基於一組規則表達式對該URL來進行重寫。這類似於URL別名概念,但它更進了一步,輸出的URL可以映射到其他主機的任何URL地址上。 修改配置文件httpd.conf的步驟:
(1) 先設置UseCanonicalName為off 。
(2) 使用RewriteEngine on打開rewrite引擎。用RewriteMap設定配置文件的位置和屬性,用RewriteCond和RewriteRule制定相應的規則。
例5、httpd.conf 文件中相關配置的一個例子:
RewriteEngine on
RewriteMap lowercase int:tolower
# 定義獨立的配置文件的位置
RewriteMap vhost dbm:/www/conf/vhostdbm
# 利用獨立的配置文件重映射虛擬域名
RewriteCond ${vhost:%1} ^(/.*)$
RewriteRule ^/(.*)$ %1/docs/$1
RewriteCond %{REQUEST_URI} ^/cgi-bin/
RewriteCond ${lowercase:%{SERVER_NAME}} ^(.+)$
RewriteCond ${vhost:%1} ^(/.*)$
RewriteRule ^/(.*)$ %1/cgi-bin/$1
這里的 vhostdbm 文件格式見」CGI 程序的編制」 。
三、CGI程序的編制
要實現虛擬域名的在線申請,就必須編寫相應CGI程序動態修改獨立的配置文件(即上面的vhostdbm文件)和進行用戶的管理(包括用戶申請,登錄,密碼修改等等)。在此只介紹對獨立的配置文件的操作,其他屬於如何用Perl語言來編寫CGI程序,請參考有關資料。
vhostdbm文件使用dbm格式來記錄數據,與用普通文本文件相比可加快尋找速度,而且易於修改。許多UNIX系統都具有叫做dbm(database management)的標准庫。該庫將鍵-值對的集合存貯到一對磁碟文件中,提供簡單的資料庫管理工具,可以方便的更改、新增或刪除數據內容。
Perl訪問dbm的方式:通過一個類似於打開文件的進程將關聯數組與dbm資料庫聯系起來。在數組中創建新元素時立即就更改了dbm資料庫。刪除一個元素的同時也刪除了dbm資料庫中的數值。可使用:
1、欲將dbm資料庫與dbm數組相關聯起來:
dbmopen(%arrayname,」dbmfilename」,$mode);
如果dbmfilename不存在的話就新建該庫。%arrayname參數是Perl的關聯數組(如果這個數組已經有值,那麼這些值就被刪除)。該關聯數組連接到叫做dbmfilename的dbm資料庫中。$mode 參數是當需要創建庫時控制庫文件許可權的數字,該數字被指定為8制,經常被用到的是0644,給除了機主之外的新用戶以只讀的許可權,機主可有全部許可權。
2、關閉dbm庫:
dbmclose(%arrayname);
%arrayname 是已經與dbm庫關聯了的數組名。
例6、VHOST打開vhostdbm,或新建一個dbm庫:
dbmopen(%VHOST,」vhostdbm」,0644);
例7、新建記錄或更改已有記錄(設從html文件form中傳過來的參數名為vhost、rhost):
$VHOST{$FORM{』vhost』}}=$FORM{』rhost』};
例8、刪除已有記錄(設從html文件form中傳過來的參數名為vhost):
delete $VHOST{$FORM{』vhost』}};
例9、關閉vhostdbm:
dbmclose(%VHOST);
註:以上已經假設傳過來的參數經過了驗證,不存在重復的記錄,否則會導致已有記錄的混亂。
httpd.conf 該文件底部
< virtualhost 192.168.0.100> #你的伺服器ip
DocumentRoot 「/home/test」 #你的網站路徑
ServerName test.domain.com #你的域名
< virtualhost>
『捌』 apache如何綁定域名,只允許該域名訪問伺服器
我以前也有這個問題,原因大概是這樣,apache接收所有指向的域名,當配置中沒有被訪問的域名時,它會默認跳到配置的第一個虛擬主機中去,於是我就在第一個虛擬主機那配了個404頁面,或者給他把地址重寫一下,跳到什麼的。也不知道這樣能不能混過網監那關。
『玖』 如何為Apache綁定多IP多域名
無論Windows主機還是Linux主機,在Apache接收處理前,首要要確保這些IP地址已經映射到APACHE服務上,也就是說,對要首先保證操作系統本身接受這些IP地址訪問,Windows綁定多IP參考前一篇文章(如何為Windows綁定多個IP和多個域名 ),Linux綁定多IP地址先自行搜索解決,以後再補充。
測試之前,確保域名已經解析到本伺服器上且已生效。
本文默認按照80埠配置,還可以通過同IP但不同埠來區分不同網站,該情況一般是用在主機管理上。舉個例子:可以使用http://192.168.1.100作為正常網址,而http://192.168.1.100:2020則可以用來做後台配置管理等。
綁定方法有很多種,比如虛擬綁定、單IP多域名綁定、多IP單域名綁定、多IP多域名綁定、埠識別綁定等等,而且每種綁定可能還有不同的實現方法,根據自己習慣和場合選擇使用。
一、Apache綁定單IP多域名
1、示例綁定:
IP地址192.168.1.100
比如:對應兩個域名http://chaodiquan.com和http://chaodiquan.cn(域名)
2、綁定過程
a、打開http.conf,該文件位置在apache/conf下面,直接用文本編輯器即可打開。
b、添加以下欄位,位置靠近ServerName 127.0.0.1或ServerName localhost:80下面附近,方便修改和理解。
view source
print?
1 <VirtualHost 192.168.1.100>
2 DocumentRoot D:/xampp/htdocs/chaodiquan.com
3 ServerName zhanhelp.com
4 </VirtualHost>
5 <VirtualHost 192.168.1.100>
6 DocumentRoot D:/xampp/htdocs/chaodiquan.com/wwwroot
7 ServerName chaodiquan.cn
8 </VirtualHost>
這個方法是對指定IP地址的主機比較適合,但是如果是動態獲取IP地址的主機就有問題了,則可以把<VirtualHost 192.168.1.100>統一修改為<VirtualHost *:80>,這樣設置後APACHE不再對IP區分,只根據ServerName和處理優先順序識別。比如很多虛擬主機要求使用CNAME解析域名,那麼該虛擬主機的IP可能會變化的,就無法使用上面的配置方法,還是<VirtualHost *:80>要更好用一些。
補充一下,如果是Linux主機,DocumentRoot欄位需要修改為類似:
usr/local/www/chaodiquan.com/
usr/local/www/chaodiquan.com/wwwroot
這樣的路徑,該路徑指向網站所在根目錄或子目錄。
c、此外還可以為每個域名指定單獨的錯誤日誌(ErrorLog)及用戶日誌地址(CustomLog)只需要把下面兩句添加到上述<VirtualHost ...></VirtualHos>欄位之間即可,示例如下(具體存儲地址可根據實際情況修改掉):
ErrorLog "logs/error.log"
CustomLog "logs/access.log" combined
d、重啟Apache服務即可生效。
二、Apache綁定多IP多域名
1、示例綁定
IP地址192.168.1.100/192.168.1.101
對應兩個域名http://chaodiquan.com和http://chaodiquan.cn
2、綁定過程
步驟同上文,還是打開httpd.conf,然後增加下面腳本。
view source
print?
1 <VirtualHost 192.168.1.100>
2 DocumentRoot D:/xampp/htdocs/chaodiquan.com
3 ServerName chaodiquan.com
4 </VirtualHost>
5 <VirtualHost 192.168.1.101>
6 DocumentRoot D:/xampp/htdocs/chaodiquan.cn
7 ServerName chaodiquan.cn
8 </VirtualHost>
這樣就是兩個IP地址對應兩個域名。實際上在上面的單IP地址綁定中,提到<VirtualHost *:80>這樣的設置方式也可以用來多IP訪問,只是只能使用ServerName來區分,而如果輸入對應的IP地址來訪問,APACHE只會顯示符合第一個優先順序網站(假設無埠區分條件下),因為它無法判斷IP地址與多域名之間的映射關系,所以使用明確的IP地址配置還是有點好處,支持直接輸入IP地址訪問,只是看起來不太好。
補充一下,如果是Linux主機,DocumentRoot欄位需要修改為類似:
usr/local/www/chaodiquan.com/
usr/local/www/chaodiquan.com/wwwroot
這樣的路徑,該路徑指向網站所在根目錄或子目錄。
『拾』 linux下apache配置多域名只有一個域名可以子目錄訪問 增加的域名不能實現子目錄訪問是什麼問題
跟據你所描述的情況看,應該是你的配置文件有些問題,
正常來說都是可訪問的,建議你把配置文件test.b.com的那一部分展示一下。