本文隸屬與20170829Apache學(xué)習(xí)
Apache 實(shí)例
一個(gè)域名訪問一個(gè)網(wǎng)頁
<VirtualHost *:80>
Servername php.gac.cn
DocumentRoot /var/www/html/php
#網(wǎng)站的目錄設(shè)置為/var/www/html/php訪問時(shí)用http://php.gac.cn
</VirtualHost>
域名/關(guān)鍵字 訪問不同的網(wǎng)頁
<VirtualHost *:80>
Servername php.gac.cn
DocumentRoot /var/www/html/php
#網(wǎng)站的目錄設(shè)置為/var/www/html/php訪問時(shí)用http://php.gac.cn
</VirtualHost>
在/var/www/html/php
目錄下新建php1,php2目錄消玄,在每個(gè)目錄里放上網(wǎng)頁呕乎,則可通過http://php.gac.cn/php1
,http://php.gac.cn/php2
訪問兩個(gè)網(wǎng)頁
apache反向代理 一個(gè)域名反向代理多個(gè)discuz站
參考
案例環(huán)境
反向代理服務(wù)器 :Centos apache
discuz站所在服務(wù)器: Ubuntu apache
實(shí)現(xiàn)
通過http://www.domain.cn/xxx翘盖,訪問Ubuntu里面里面已存在的不同的discuz網(wǎng)站
問題
discuz會(huì)根據(jù)訪問的域名如http://xxx.cn生成返回的html網(wǎng)頁中的連接来屠,所以訪問discuz的連接必須是http://www.domain.cn/xxx疏尿,而在公網(wǎng)上www.domain.cn指向的是反向代理服務(wù)器 (Centos )
一種方案
反向代理服務(wù)器 (Centos apache)配置
apache配置文件填入
<VirtualHost *:80>
Servername www.domain.cn
ProxyRequests Off
#zx站
ProxyPass /zx/ http://www.domain.cn/zx/
ProxyPassReverse /zx/ http://www.domain.cn/zx/
#hjl站
ProxyPass /hjl/ http://www.domain.cn/hjl/
ProxyPassReverse /hjl/ http://www.domain.cn/hjl/
<Proxy *>
Order Deny,Allow
Allow from all
</Proxy>
</VirtualHost>
因?yàn)樵诠W(wǎng)上www.domain.cn指向代理服務(wù)器(centos)淋淀,所以為了讓代理服務(wù)器(centos)將www.domain.cn解析為discuz所在的服務(wù)器(ubuntu)遥昧,在代理服務(wù)器(centos)中添加hosts
echo discuz所在的服務(wù)器(ubuntu)ip www.domain.cn >> /etc/hosts
discuz所在的服務(wù)器(ubuntu,apache)配置
apache配置文件填入
#proxy
<VirtualHost *:80>
ServerName www.domain.cn
DocumentRoot /var/www
ErrorLog /var/data/log/proxy.log
CustomLog /var/data/log/proxy.log combined
</Virtualhost>
將zx站的目錄放在/var/www/zx目錄下,hjl站的目錄放在/var/www/hjl目錄下
這樣當(dāng)訪問http://www.domain.cn/zx/(對(duì)公網(wǎng)來說www.domain.cn指向代理服務(wù)器)時(shí)朵纷,代理服務(wù)器會(huì)自動(dòng)請(qǐng)求http://www.domain.cn/zx/(對(duì)代理服務(wù)器來說www.domain.cn指向disucz站點(diǎn)服務(wù)器)炭臭,discuz返回的網(wǎng)頁里面所有的連接也都是http://www.domain.cn/zx/開頭的,可以持續(xù)訪問袍辞。
discuz操作
zx站和hjl站的域名都是www.domain.cn鞋仍,他們的cookies保存如果都在根目錄就會(huì)沖突,將zx站默認(rèn)cookies目錄設(shè)置為/zx/,hjl站默認(rèn)cookie目錄設(shè)置為/hjl/就不會(huì)沖突
vi discuz目錄/config/config_global.php
把$_config['cookie']['cookiepath'] = '';
更改為$_config['cookie']['cookiepath'] = '/xxx/';
xxx代表zx或hjl
discuz控制面板里也把相應(yīng)的連接設(shè)置為http://www.domain.cn/xxx/