linux环境apache多端口配置虚拟主机的方法深入介绍


Posted in PHP onJune 09, 2013

默认情况下,linux上apache使用的
默认文档目录是:/var/www
默认端口是:80
如果想发布自己的一个系统资源目录,可以使用下面的方法,执行如下命令:
(1)添加监听端口
#cd /etc/apache2
#vim ports.conf
文件添加:
NameVirtualHost *:8000
Listen 8000
(2)配置虚拟目录
#cd /etc/apache2/sites-available
#cp default default-me
#vim default-me
文件内容如下:

<VirtualHost *:8000 >
    ServerAdmin webmaster@localhost
    DocumentRoot /wwwroot
    <Directory / >
Options FollowSymLinks
AllowOverride None
    </Directory>
    <Directory /wwwroot/ >
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
    </Directory>
    ErrorLog /var/log/apache2/error.log
    # Possible values include: debug, info, notice, warn, error, crit,
    # alert, emerg.
    LogLevel warn
    CustomLog /var/log/apache2/access.log combined
</VirtualHost>

粗体部分是关键点。
(3)发布站点
# ln -s /etc/apache2/sites-available/default-me /etc/apache2/sites-enabled/001-default
(4)重启服务
#/etc/init.d/apache2 restart
(5)测试
http://localhost:8000/
如果能够正常访问就说明配置正确了。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
# Virtual Hosts
#
# 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 *:81
NameVirtualHost *:82
NameVirtualHost *:83
NameVirtualHost *:84
NameVirtualHost *:85
NameVirtualHost *:86
#
# VirtualHost example:
# Almost any Apache directive may go into a VirtualHost container.
# The first VirtualHost section is used for all requests that do not
# match a ServerName or ServerAlias in any <VirtualHost> block.
#
<VirtualHost *:81>
ServerAdmin jsw7001@hotmail.com
DocumentRoot D:/AppServ/www/www-nongye
ServerName www.dede.com
ErrorLog D:/AppServ/www/www-nongye/errornongye.log
CustomLog logs/dummy-host2.appservnetwork.com-access_log common
</VirtualHost>
<VirtualHost *:82>
<Directory "D:/AppServ/www-chinaec" >
Options FollowSymLinks
#Deny from all
Allow from all
</Directory>
ServerAdmin jsw7001@hotmail.com
DocumentRoot D:/AppServ/www-chinaec
ServerName www.dede.com
DirectoryIndex index.php index.html
ErrorLog D:/AppServ/www-chinaec/errornongjiale.log
CustomLog logs/dummy-host2.appservnetwork.com-access_log common
</VirtualHost>
<VirtualHost *:83>
ServerAdmin jsw7001@hotmail.com
DocumentRoot D:/AppServ/www/www-05110
ServerName www.dede.com
ErrorLog D:/AppServ/www/www-05110/errornong05110.log
CustomLog logs/dummy-host2.appservnetwork.com-access_log common
</VirtualHost>
<VirtualHost *:84>
ServerAdmin jsw7001@hotmail.com
DocumentRoot D:/AppServ/www/wordpress
ServerName www.dede.com
ErrorLog D:/AppServ/www/wordpress/errornongwordpress.log
CustomLog logs/dummy-host2.appservnetwork.com-access_log common
</VirtualHost>
<VirtualHost *:85>
ServerAdmin jsw7001@hotmail.com
DocumentRoot D:/AppServ/www/magento
ServerName www.dede.com
ErrorLog D:/AppServ/www/magento/errormagento.log
CustomLog logs/dummy-host2.appservnetwork.com-access_log common
</VirtualHost>
<VirtualHost *:86>
ServerAdmin jsw7001@hotmail.com
DocumentRoot D:/AppServ/www/magento1322
ServerName www.dede.com
ErrorLog D:/AppServ/www/magento1322/errormagento1322.log
CustomLog logs/dummy-host2.appservnetwork.com-access_log common
</VirtualHost>
<VirtualHost *:88>
ServerAdmin jsw7001@hotmail.com
DocumentRoot D:/AppServ/www/www-nongjiale
ServerName www.dede.com
ErrorLog D:/AppServ/www/www-nongjiale/errornongjiale.log
CustomLog logs/dummy-host2.appservnetwork.com-access_log common
</VirtualHost>
<VirtualHost *:80>
ServerAdmin webmaster@dummy-host2.x
DocumentRoot "C:/Apache2.2/docs/dummy-host2.x"
ServerName dummy-host2.x
ErrorLog "logs/dummy-host2.x-error.log"
CustomLog "logs/dummy-host2.x-access.log" common
</VirtualHost>

1、单域名单端口设置
如:www.abc.com 默认用80访问

特别说明,apache的配置默认都在安装目录下的conf目录里面
或者是/etc/apache2
不过一定要注意,listen.conf文件中端口监听是否开启
如下图,表示已经开启80端口监听

直接默认
1、单域名单端口设置
如:www.abc.com 默认用80访问

特别说明,apache的配置默认都在安装目录下的conf目录里面
或者是/etc/apache2
不过一定要注意,listen.conf文件中端口监听是否开启
如下图,表示已经开启80端口监听
直接默认修改default-server.conf

这个配置最好简单
安装好了,之后,默认已经能够使用了,只是要把它修改成你需要的域名及访问路径罢了。

给一个标准配置吧

DocumentRoot "/srv/www/htdocs"
#
# Configure the DocumentRoot
#
<Directory "/srv/www/htdocs">
# Possible values for the Options directive are "None", "All",
# or any combination of:
#   Indexes Includes FollowSymLinks SymLinksifOwnerMatch ExecCGI MultiViews
#
# Note that "MultiViews" must be named *explicitly* --- "Options All"
# doesn't give it to you.
#
# The Options directive is both complicated and important.  Please see
# http://httpd.apache.org/docs-2.2/mod/core.html#options
# for more information.
Options None
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
#   Options FileInfo AuthConfig Limit
AllowOverride None
# Controls who can get stuff from this server.
Order allow,deny
Allow from all
</Directory>

2、单域名多端口设置
<Directory "/srv/www/htdocs/bbs">
    Options None
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
<Directory "/srv/www/htdocs/">
    Options None
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
NameVirtualHost   *:80
NameVirtualHost   *:81
<VirtualHost *:80>
  DirectoryIndex  index.html index.php
  ServerName   "www.abc.com "
  DocumentRoot   "/srv/www/htdocs/"  
  </VirtualHost>
<VirtualHost *:81>
  DirectoryIndex   index.php
    ServerName   "www.abc.com:81 "
  DocumentRoot   "/srv/www/htdocs/bbs/"  
  </VirtualHost>

3、多域名多端口设置
<Directory "/srv/www/htdocs/btc">
    Options None
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
<Directory "/srv/www/htdocs/bbs">
    Options None
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
<Directory "/srv/www/htdocs/">
    Options None
    AllowOverride None
    Order allow,deny
    Allow from all
</Directory>
NameVirtualHost   *:80
NameVirtualHost   *:81
<VirtualHost *:80>
  DirectoryIndex  index.html index.php
  ServerName   "www.abc.com "
  DocumentRoot   "/srv/www/htdocs/"  
  </VirtualHost>
<VirtualHost *:80>
  DirectoryIndex  index.html index.php
  ServerName   "www.btc.com "
  DocumentRoot   "/srv/www/htdocs/btc"  
  </VirtualHost>
<VirtualHost *:81>
  DirectoryIndex   index.php
    ServerName   "www.abc.com:81 "
  DocumentRoot   "/srv/www/htdocs/bbs/"  
  </VirtualHost>

需要注意的问题是,多端口监听,一定要注意listen.conf文件,是否开启了相应端口。
PHP 相关文章推荐
用 php 编写的日历
Oct 09 PHP
Wordpress php 分页代码
Oct 21 PHP
PHP下操作Linux消息队列完成进程间通信的方法
Jul 24 PHP
php 删除一个数组中的某个值.兼容多维数组!
Feb 18 PHP
MongoDB在PHP中的常用操作小结
Feb 20 PHP
PHP基于imap获取邮件实例
Nov 11 PHP
PHP生成静态HTML页面最简单方法示例
Apr 09 PHP
PHP第三方登录―QQ登录实现方法
Feb 06 PHP
PHP更安全的密码加密机制Bcrypt详解
Jun 18 PHP
php实现的pdo公共类定义与用法示例
Jul 19 PHP
PHP区块查询实现方法分析
May 12 PHP
THINKPHP-Apache服务器中使用Alias虚拟目录URL重写 隐藏index.php
Mar 09 PHP
探讨PHP删除文件夹的三种方法
Jun 09 #PHP
如何用php获取文件名后缀
Jun 09 #PHP
深入php多态的实现详解
Jun 09 #PHP
深入PHP autoload机制的详解
Jun 09 #PHP
定义php常量的详解
Jun 09 #PHP
基于php冒泡排序算法的深入理解
Jun 09 #PHP
深入apache host的配置详解
Jun 09 #PHP
You might like
php AJAX实例根据邮编自动完成地址信息
2008/11/23 PHP
PHP 登录完成后如何跳转上一访问页面
2014/01/14 PHP
PHP使用array_fill定义多维数组的方法
2015/03/18 PHP
Smarty实现页面静态化(生成HTML)的方法
2016/05/23 PHP
PHP面向对象中new self()与 new static()的区别浅析
2017/08/17 PHP
PHP 进程池与轮询调度算法实现多任务的示例代码
2019/11/26 PHP
JQuery 构建客户/服务分离的链接模型中Table中的排序分析
2010/01/22 Javascript
JSQL 基于客户端的成绩统计实现方法
2010/05/05 Javascript
浅析JavaScript中的CSS属性及命名规范
2013/11/28 Javascript
js创建元素(节点)示例
2014/01/02 Javascript
IE6 hack for js 集锦
2014/09/23 Javascript
jQuery实现鼠标滚轮动态改变样式或效果
2015/01/05 Javascript
jQuery 1.9.1源码分析系列(十三)之位置大小操作
2015/12/02 Javascript
javascript针对不确定函数的执行方法
2015/12/16 Javascript
关于JSON与JSONP简单总结
2016/08/16 Javascript
微信小程序点击控件修改样式实例详解
2017/07/07 Javascript
jQuery实现表单动态添加与删除数据操作示例
2018/07/03 jQuery
Vue组件跨层级获取组件操作
2020/07/27 Javascript
vue+swiper实现左右滑动的测试题功能
2020/10/30 Javascript
python中list循环语句用法实例
2014/11/10 Python
python3 与python2 异常处理的区别与联系
2016/06/19 Python
python监控linux内存并写入mongodb(推荐)
2017/09/11 Python
Python探索之静态方法和类方法的区别详解
2017/10/27 Python
Python多层装饰器用法实例分析
2018/02/09 Python
python实现远程通过网络邮件控制计算机重启或关机
2018/02/22 Python
python计算日期之间的放假日期
2018/06/05 Python
python中的协程深入理解
2019/06/10 Python
python读取当前目录下的CSV文件数据
2020/03/11 Python
Farfetch美国:奢侈品牌时尚购物平台
2019/05/02 全球购物
我与祖国共奋进演讲稿
2014/09/13 职场文书
领导干部群众路线教育实践活动剖析材料
2014/10/10 职场文书
写给老师的保证书
2015/05/09 职场文书
恋恋笔记本观后感
2015/06/16 职场文书
《火烧云》教学反思
2016/02/23 职场文书
2019入党申请书范文3篇
2019/08/21 职场文书
JavaScript 反射学习技巧
2021/10/16 Javascript