麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 網(wǎng)站 > Apache > 正文

單臺服務(wù)器中利用Apache的VirtualHost如何搭建多個Web站點詳解

2024-08-27 18:30:49
字體:
供稿:網(wǎng)友

前言

本文將詳細記錄一下如何在單臺服務(wù)器上,利用apache的virtualhost(虛擬主機)來搭建多個不同的web站點,并且每個站點獨立管理自己的session,下面話不多說了,來一起看看詳細的介紹吧。

開發(fā)環(huán)境

先說下我各項開發(fā)環(huán)境參數(shù):

  • 操作系統(tǒng): RedHat6.7(CentOS)
  • WEB服務(wù)器:apache2.2
  • php5.6.30

修改Apache配置

apache2.2 的配置文件路徑在 /etc/httpd/conf/httpd.conf

我們用下面的命令修改apache的配置文件:

$ vim /etc/httpd/conf/httpd.conf

添加監(jiān)聽端口

找到如下的部分,

## Listen: Allows you to bind Apache to specific IP addresses and/or# ports, in addition to the default. See also the <VirtualHost># directive.## Change this to Listen on specific IP addresses as shown below to# prevent Apache from glomming onto all bound IP addresses (0.0.0.0)##Listen 12.34.56.78:80Listen 80

默認的話,應(yīng)該只會監(jiān)聽80端口,這里我們在后面加上用于另外站點的端口號。例如我們A站點是默認的80端口,B站點計劃搭建在8080端口上,最終的配置文件修改成

...#Listen 12.34.56.78:80Listen 80Listen 8080

啟動并添加VirtualHost

接著在配置文件中找到下面的章節(jié):

### Section 3: Virtual Hosts## VirtualHost: If you want to maintain multiple domains/hostnames on your# machine you can setup VirtualHost containers for them. Most configurations# use only name-based virtual hosts so the server doesn't need to worry about# IP addresses. This is indicated by the asterisks in the directives below.## Please see the documentation at# <URL:http://httpd.apache.org/docs/2.2/vhosts/># for further details before you try to setup virtual hosts.## You may use the command line option '-S' to verify your virtual host# configuration.## Use name-based virtual hosting.# NameVirtualHost *:80 NameVirtualHost *:8080

上面的代碼是我已經(jīng)修改好的,默認的話,最后兩行NameVirtualHost應(yīng)該也是被注釋掉了。 因為我們要啟用虛擬主機,所以這里就把我們之前監(jiān)聽的兩個端口都設(shè)置好。

同時,將之后的配置文件修改成如下的樣子,我們先來設(shè)置默認的80端口的站點A

## VirtualHost example:# Almost any Apache directive may go into a VirtualHost container.# The first VirtualHost section is used for requests without a known# server name.#<VirtualHost *:80># ServerAdmin [email protected] DocumentRoot /var/www/webA ServerName webA# ErrorLog logs/dummy-host.example.com-error_log# CustomLog logs/dummy-host.example.com-access_log common</VirtualHost>

默認的Apache是沒有開啟VirtualHost的,所以這些代碼都是被注釋掉了的,我們這里只需要把DocumentRoot和ServerName所在的行去掉注釋并且編輯下就好了。

DocumentRoot指的的是我們A站點的網(wǎng)站根目錄位置

接下來再補充上8080端口的B站點信息就好了。

<VirtualHost *:8080> DocumentRoot /var/www/webB ServerName webB</VirtualHost>

到這里,重啟一下Apache服務(wù)(service httpd restart),就可以訪問兩個不同的站點了。

獨立Session

如果我們的A,B兩個站點的登錄邏輯是用的一套代碼,那我們使用后會發(fā)現(xiàn),A站點和B站點的Session是共享的,也就是說,如果用戶在A站點登錄了之后,B站點是無需登錄,自動也處于登錄狀態(tài); 用戶在A站點退出后,也會自動從B站點退出。

這顯然不是我們想要的結(jié)果,原因就是A,B兩個站點公用了一套Session體系,所以才會造成這樣的問題。

解決的辦法就是我們指定站點中session的存放位置。

同樣是修改配置文件中指定虛擬主機,我們以站點B做為示例,修改配置文件如下:

<VirtualHost *:8080> DocumentRoot /var/www/webB ServerName webB <Directory "/var/www/webB">  AllowOverride All  php_value session.save_path "/var/lib/php/session_B" </Directory></VirtualHost>

php_value中 session.save_path 其實就是php.ini文件中的session.save_path字段,這里我們其他值都使用默認的php.ini配置文件,唯獨指定了session的文件存放路徑,默認的php session文件是存儲在 /var/lib/php/session/文件夾中。

再試著去訪問以下站點B,并且進行一些session的存取操作,回頭到/var/lib/php/session_B文件夾中,就會發(fā)現(xiàn)新的session文件了。

總結(jié)

以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網(wǎng)的支持。


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 美女网站黄在线观看 | 97中文字幕第一一一页 | 国产精品久久久久久久久久大牛 | 亚洲成人精品国产 | 九一传媒在线观看 | 黄色影院在线看 | 黄色网址在线免费播放 | 欧美成人一区二区视频 | 男女一边摸一边做羞羞视频免费 | 亚洲一区二区中文字幕在线观看 | 精品一区二区在线播放 | 综合精品视频 | av在线看网站 | 在线观看福利网站 | 欧美精品电影一区 | 成人免费毛片一 | 天堂二区| 成年人小视频在线观看 | 九色激情网 | 小雪奶水翁胀公吸小说最新章节 | 在线亚洲欧美 | 免费观看视频91 | 日韩精品久久久 | 欧美一级毛片特黄黄 | 国产精品福利一区 | 九九热在线视频观看 | 久久91亚洲人成电影网站 | 深夜精品福利 | 欧美××××黑人××性爽 | 国产精品午夜未成人免费观看 | av亚洲在线观看 | 在线观看免费污视频 | 2019中文字幕在线播放 | 国产精品成人久久久久a级 欧美特黄一级高清免费的香蕉 | 中国免费黄色 | av电影网在线观看 | 久久久久久久久久91 | 在线天堂中文字幕 | 91福利免费观看 | 国产成人精品区一区二区不卡 | 国产99免费 |