vps只有1个固定IP, 架设多个网站, 每个网站对应不同的域名

仅供存放个人的配置文件,不要在本版发问。
回复
头像
relaxssl
帖子: 1448
注册时间: 2007-01-30 7:13

vps只有1个固定IP, 架设多个网站, 每个网站对应不同的域名

#1

帖子 relaxssl » 2010-01-04 18:27

1. 先把各个域名的解析记录指向到vps的IP, 主要是A记录。
2. 我们先来创建一个新网站的目录
SSH登录到VPS

代码: 全选

sudo adduser joomlagnu #这个命令会在/home/下建立一个新的目录joomlagnu, 这种方法创建的用户是一般用户, 没有root权限, 要创建有root权限的用户要归属分组:sudo useradd -g root joomlagnu
修改密码:
sudo passwd joomlagnu
在/home/joomlagnu/下建立网站目录public_html

代码: 全选

sudo mkdir /home/joomlagnu/public_html
链接网站目录到数据库

代码: 全选

sudo chown -R www-data:www-data /home/joomlagnu/public_html
也可以用新用户登录到VPS(服务器),运行命令 mkdir public_html 创建public_html目录

2. 配置apache2, 指向域名对应的网站目录, 在修改任何程序之前, 都不要忘记先备份需要修改的文件。

代码: 全选

cd /etc/apache2/sites-available/
ls查看里面有default和default-ssl两个配置文件, 我们主要是对default进行配置, 在网络上很多教程说把所有的网站的配置都放在default这个文档好管理, 我觉得这样反而难管理, 应该每个网站一个配置文件还要明了。
复制default并重命名网站的名字

代码: 全选

sudo cp default default_backup #备份default文件

代码: 全选

sudo cp default joomlagnu #joomlagnu是新建的网站

代码: 全选

sudo vi joomlagnu #这是修改配置文件
我打算把新建的网站放在/home/joomlagnu/public_html/目录下, 那么我们修改配置文件joomlagnu的内容如下(域名,域名的别名)

<VirtualHost *:80>
ServerAdmin webmaster@localhost
ServerName joomlagnu.com
ServerAlias http://www.joomlagnu.com

DocumentRoot /home/joomlagnu/public_html
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
<Directory /home/joomlagnu/public_html/>
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
allow from all
</Directory>

ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
<Directory "/usr/lib/cgi-bin">
AllowOverride None
Options +ExecCGI -MultiViews +SymLinksIfOwnerMatch
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

Alias /doc/ "/usr/share/doc/"
<Directory "/usr/share/doc/">
Options Indexes MultiViews FollowSymLinks
AllowOverride None
Order deny,allow
Deny from all
Allow from 127.0.0.0/255.0.0.0 ::1/128
</Directory>

</VirtualHost>

配置完了之后启用网站

代码: 全选

sudo a2ensite joomlagnu #这个命令的作用是在sites-enable下生成一个软链接文件joomlagnu, 也就是启用了这个网站了。
如果你是把配置文件全部放在default这个已经存在的配置文件, 那么sudo a2ensite joomlagnu这个命令是不用执行的, 因为在sites-enabled已经存在, 也就是已经启用了。如果是每个网站一个配置文件, 那么这个命令是一定要执行的。

重新启动apache2

代码: 全选

sudo /etc/init.d/apache2 reload
用ftp传一个文件index.html(文件内容it works!)到/home/joomlagnu/public_html/下测, 在浏览器里输入域名www.joomlagnu.com检验一下, OK! 成功。

总结一下步骤:
ssh上vps
sudo adduser joomlagnu
sudo passwd joomlagnu
退出exit, 换新建的帐号登录ssh, 不然要涉及到新建的public_html的归属问题
cd /home/joomlagnu/
mkdir public_html
退出exit, 换root帐号上ssh, 把新建的网站目录public_html关联到数据库
sudo chown -R www-data:www-data /home/joomlagnu/public_html

cd /etc/apache2/sites-available/
ls
sudo cp defaullt joomlagnu
sudo vi joomlagnu
修改配置文件,添加域名, 别称, 并指向/home/joomlagnu/public_html
sudo a2ensite joomlagnu
sudo /etc/init.d/apache2 reload
输入网站地址访问测试 http://joomlagnu.com; http://www.joomlagnu.com
成功。

然后再设置vsftpd设置, 规定用户只能在自己的目录之下就OK了。
头像
pityonline
帖子: 3864
注册时间: 2008-12-09 12:44
来自: 北京
联系:

Re: vps只有1个固定IP, 架设多个网站, 每个网站对应不同的域名

#2

帖子 pityonline » 2010-02-09 2:22

mark,这两天用得着。谢谢楼主分享!
Pity is the bomp!
活着就是折腾!生命不息,折腾不止!
看这帮家伙在干什么?@pityonline/u
Dropbox+Vps+PC 跑起来了!这是邀请链接
openview
帖子: 35
注册时间: 2007-03-21 13:24

Re: vps只有1个固定IP, 架设多个网站, 每个网站对应不同的域名

#3

帖子 openview » 2010-02-21 22:56

很有用,收了
jell1605
帖子: 58
注册时间: 2006-05-08 17:21
联系:

Re: vps只有1个固定IP, 架设多个网站, 每个网站对应不同的域名

#4

帖子 jell1605 » 2011-11-22 17:40

不错的教程 :em11
留下个记号备用
jietian123
帖子: 10
注册时间: 2012-03-20 13:19

Re: vps只有1个固定IP, 架设多个网站, 每个网站对应不同的域名

#5

帖子 jietian123 » 2012-03-24 2:04

有没有关于LAMPP的单IP多站点独立服务器的教程,或者看看我的问题,先谢了.
http://forum.ubuntu.org.cn/viewtopic.php?f=24&t=368343
jietian123
帖子: 10
注册时间: 2012-03-20 13:19

Re: vps只有1个固定IP, 架设多个网站, 每个网站对应不同的域名

#6

帖子 jietian123 » 2012-03-24 11:23

很好的帖子,收藏
wgwlaw
帖子: 13
注册时间: 2009-05-17 17:36
系统: ubuntu20.04
来自: china
联系:

Re: vps只有1个固定IP, 架设多个网站, 每个网站对应不同的域名

#7

帖子 wgwlaw » 2013-08-25 16:48

非常感谢
数字营销王光卫博客
回复