Ubuntu Linux Apach虚拟主机的安装配置
目标
1.创建基于IP的虚拟主机用于一个项目的整体测试
2.创建基于用户的虚拟主机用于用户测试自己的代码开始
创建虚拟主机的目录结构sudo/home/wwwcd/home/wwwsudo mkdir 192.168.0.251 192.168.0.252cd 192.168.0.251sudo mkdir cgi-bin htdocs logs dbcd . ./192.168.0.252sudo mkdir cgi-bin htdocs logs dbt re e/h om e/www
/home/www
|-- 192.168.0.251
| |--cgi-bin
| |--db
| |--htdocs
| `-- logs
`-- 192.168.0.252
|--cgi-bin
|--db
|--htdocs
`-- logs
1.
要在192.168.0.251和192.168.0.252上创建两个基于IP的虚拟主机为了直观起见在/h om e/www下分别创建了目录192.168.0.251和192.168.0.252
2.cgi-bin子目录用于存放CGI脚本
3.d b子目录用于存放SQ Lite数据库
4.htdocs子目录用于存放站点文档
5.logs子目录用于存放站点日志
创建虚拟主机的管理帐号并设置目录权限sudo useradd-g www-data -d/home/www/192.168.0.251 wuser1sudo useradd-g www-data -d/home/www/192.168.0.252 wuser2sudo passwd wuser1sudo passwd wuser2sudo chown-R wuser1.www-data/home/www/192.168.0.251
1.
将192.168.0.251虚拟主机的管理者赋予wuser1 将192.168.0.252虚拟主机的管理者赋予wuser2允许他们使用ssh登录
2.wuse r1和wuse r2的主组均设置为www-data这样设置的方便之处在于若站内有Apache进程可写的内容只需添加组可写权限即可
配置虚拟网络接口和主机名解析
使用如下命令sudo vim/etc/network/interfaces
添加如下的配置auto eth0:1iface eth0:1 inet staticaddress 192.168.0.251netmask 255.255.255.0network 192.168.0.0broadcast 192.168.0.255gateway 192.168.0.1auto eth0:2iface eth0:2 inet static
address 192.168.0.252netmask 255.255.255.0network 192.168.0.0broadcast 192.168.0.255gateway 192.168.0.1
然后使用如下命令重新启动网络服务sudo/etc/init.d/networking restart
然后在/etc/hosts文件中添加如下的行
192.168.0.251 web1.example.com web1
192.168.0.252 web2.example.com web2
配置Apache
S1.在/etc/apache2/sites-availab le/ 目录下创建新的文件192.168.0.251添加如下的配置
/etc/apache2/sites-available/192.168.0.251
DocumentRoot"/home/www/192.168.0.251/htdocs/"
Options Indexes Fol lowSymLinks MultiViews
Al lowOverride Al l
Order al low,deny
al lowfrom al l
ScriptA l ias/cgi-b in/ /hom e/www/192.168.0.251/cgi-b in/
Al lowOverride None
Options+ExecCGI -M ultiViews+Sym LinksIfOwnerMatch
Order al low,deny
Al low from al l
ErrorLog/home/www/192.168.0.251/logs/error. log
CustomLog/home/www/192.168.0.251/access. log combined
S2.在/etc/apache2/sites-available/ 目录下创建新的文件192.168.0.252添加如下的配置
/etc/apache2/sites-available/192.168.0.252
DocumentRoot"/home/www/192.168.0.252/htdocs/"
Options Indexes Fol lowSymLinks MultiViews
Al lowOverride Al l
Order al low,denyal lowfrom al l
ScriptA l ias/cgi-b in/ /hom e/www/192.168.0.252/cgi-b in/
Al lowOverride None
Options+ExecCGI -M ultiViews+Sym LinksIfOwnerMatchOrder al low,deny
Al low from al l
ErrorLog/home/www/192.168.0.252/logs/error. log
CustomLog/home/www/192.168.0.252/access. log combined
S3.重新启动Apachesudo a2enmod rewritesudo a2enmod php5sudo a2enmod perlsudo a2enmod mod_pythonsudo a2ensite 192.168.0.251sudo a2ensite 192.168.0.252sudo/etc/init.d/apache2 restart
配置站点内容的上传
FTP服务器
S 1:使用如下命令安装proftpdsudo apt-get instal l proftpd proftpd-doc
S2.使用默认配置即可实现本地用户的上传和下载Sa m ba服务器
S1.使用如下命令sudo vi/etc/samba/smb.conf
添加如下的配置行
/etc/samba/smb.conf
[homes]comment=Home Directoriesbrowseable=nowritable=yescreate mask=0644directory mask=0755
S2.配置Sam ba用户通过如下命令添加Sam ba用户sudo smbpasswd-a wuser1sudo smbpasswd-a wuser2
S3.启动Sam ba服务器sudo/etc/init.d/samba restart
创建基于用户的虚拟主机
*
可能开发者在Windows客户机没有创建开发环境
*
为了使每个开发者可以测试自己的代码可以创建基于用户的虚拟主机
创建用户帐号sudo useradd-g www-data -m user1sudo useradd-g www-data -m user2sudo passwd user1sudo passwd user2
1.
用户需要在宿主目录下创建public_html子目录将Web文档放入其中可以通过URL http://IPorHostname/~username访问自己的站点
2.
若进行CGI开发还需要在宿主目录下创建cgi-bin子目录
配置Apache
使用如下命令启用us e rd ir模块即可sudo a2enmod userdir
若进行CGI开发需要修改/etc/apache2/mods-available/userd ir.conf
UserDir public_html
UserDir disabled root
Al lowOverride FileInfo AuthConfig Limit
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExec
ScriptA l ias M atch~([a-z]+)/cgi-b in/(.*) /hom e/$1/cgi-b in/$2
# 添加此行 意思是匹配~user_name/cgi-bin/cg i_name 自动映射到/home/user_name/cgi-bin/cgi-name脚本
关于默认的虚拟主机
Ubuntu 中文件/etc/apache2/sites-available/default配置的是默认的虚拟主机。default虚拟主机的根文档目录默认设置为/var/www为了便于备份最好将所有的Web内容都存放在/home/www目录下为此可以将默认的虚拟主机的根文档目录默认设置为/h om e/www下的某个子目录下。
创建虚拟主机的目录结构cd/home/wwwsudo mkdir 192.168.0.222cd 192.168.0.222sudo mkdir cgi-bin htdocs
创建虚拟主机的管理帐号并设置目录权限sudo useradd-g www-data -d/home/www/192.168.0.222 wdefaultsudo passwd wdefault
傲游主机商我们可能很多人并不陌生,实际上这个商家早年也就是个人主机商,传说是有几个个人投资创办的,不过能坚持到现在也算不错,毕竟有早年的用户积累正常情况上还是能延续的。如果是新服务商这几年确实不是特别容易,问到几个老牌的个人服务商很多都是早年的用户积累客户群。傲游主机目前有提供XEN和KVM架构的云服务器,不少还是亚洲CN2优化节点,目前数据中心包括中国香港、韩国、德国、荷兰和美国等多个地区的CN...
Hostiger商家我们可能以前也是有见过的,以前他们的域名是Hostigger,后来进行微调后包装成现在的。而且推出Columbus Day哥伦布日优惠活动,提供全场的VPS主机首月7折月付2.79美元起的优惠。这里我们普及一下基础知识,Columbus Day ,即为每年10月12日,是一些美洲国家的节日,纪念克里斯托弗·哥伦布在北美登陆,为美国的联邦假日。Hostiger 商家是一个成立于2...
官方网站:点击访问亚州云活动官网活动方案:地区:美国CERA(联通)CPU:1核(可加)内存:1G(可加)硬盘:40G系统盘+20G数据盘架构:KVM流量:无限制带宽:100Mbps(可加)IPv4:1个价格:¥128/年(年付为4折)购买:直达订购链接测试IP:45.145.7.3Tips:不满意三天无理由退回充值账户!地区:枣庄电信高防防御:100GCPU:8核(可加)内存:4G(可加)硬盘:...