页眉
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
页脚
页眉
sudo chown-R wuser2.www-data/home/www/192.168.0.252
1.
将192.168.0.251虚拟主机的管理者赋予wuser1 将192.168.0.252虚拟主机的管理者赋予wu s e r2允许他们使用s s h登录
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-available/ 目录下创建新的文件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
ScriptAlias/cgi-b in/ /home/www/192.168.0.251/cgi-b in/
Al lowOverride None
Options+ExecCGI -M ultiViews+Sym LinksIfOwnerMatch
Order al low,deny
Al lowfrom 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
ScriptAlias/cgi-b in/ /home/www/192.168.0.252/cgi-b in/
页脚
页眉
Al lowOverride None
Options+ExecCGI -M ultiViews+Sym LinksIfOwnerMatch
Order al low,deny
Al lowfrom al l
ErrorLog/home/www/192.168.0.252/logs/error. logCustomLog/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=nowritab le=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-avai lable/userd ir.conf页脚
页眉
UserDir publ ic_html
UserDir disabled root
Al lowOverride Fi leInfo AuthConfig Limit
Options MultiViews Indexes SymLinksIfOwnerMatch IncludesNoExecScriptA liasM atch~([a-z]+)/cgi-b in/(.*) /home/$1/cgi-b in/$2
#添加此行意思是匹配~user_name/cgi-bin/cgi_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
页脚
HostHatch在当地时间7月30日发布了一系列的促销套餐,涉及亚洲和欧美的多个地区机房,最低年付15美元起,一次买2年还能免费升级双倍资源。商家成立于2011年,提供基于KVM架构的VPS主机,数据中心包括中国香港、美国、英国、荷兰、印度、挪威、澳大利亚等国家的十几个地区机房。官方网站:https://hosthatch.com/NVMe VPS(香港/悉尼)1 CPU core (12.5%...
飞讯云官网“飞讯云”是湖北飞讯网络有限公司旗下的云计算服务品牌,专注为个人开发者用户、中小型、大型企业用户提供一站式核心网络云端部署服务,促使用户云端部署化简为零,轻松快捷运用云计算。飞讯云是国内为数不多具有ISP/IDC双资质的专业云计算服务商,同时持有系统软件著作权证书、CNNIC地址分配联盟成员证书,通过了ISO27001信息安全管理体系国际认证、ISO9001质量保证体系国际认证。 《中华...
云基成立于2020年,目前主要提供高防海内外独立服务器用户,欢迎各类追求稳定和高防优质线路的用户。业务可选:洛杉矶CN2-GIA+高防(默认500G高防)、洛杉矶CN2-GIA(默认带50Gbps防御)、香港CN2-GIA高防(双向CN2GIA专线,突发带宽支持,15G-20G DDoS防御,无视CC)、国内高防服务器(广州移动、北京多线、石家庄BGP、保定联通、扬州BGP、厦门BGP、厦门电信、...