如何在CentOS 6上设置nginx虚拟主机
确保nginx安装在您的VPS上。如果不是,你可以快速安装它的2个步骤。
安装EPEL存储库:
su -c 'rpm -Uvh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm'
安装nginx
yum install nginx
第一步 - 创建一个新目录
创建虚拟主机的第一步是创建一个目录,我们将保留新网站的信息。
此位置将是以后Nginx虚拟配置文件中的文档根。通过在代码行中添加-p,命令会自动生成新目录的所有父代。
sudo mkdir -p /var/www/example.com/public_html
您需要指定一个实际的DNS许可域或IP地址,以测试虚拟主机是否正在工作。在本教程中,我们将使用example.com作为正确域名的占位符。
但是,如果您想使用未经批准的域名来测试该过程,您将在第六步中找到有关如何使其在本地计算机上工作的信息。
第二步 - 授予权限
我们需要将目录的所有权授予适当的用户,而不是仅仅保留在根系统上。您可以使用适当的用户名替换下面的“www”。
sudo chown -R www:www /var/www/example.com/public_html
此外,重要的是要确保每个人都能够读取我们的新文件。
sudo chmod 755 /var/www
现在你都完成了权限。
第三步 - 创建页面
我们需要在我们之前创建的目录中创建一个名为index.html的新文件。
sudo vi /var/www/example.com/public_html/index.html
我们可以向文件中添加一些文本,以便我们可以查看网站何时重定向到虚拟主机。
<html>
<head>
<title>www.example.com</title>
</head>
<body>
<h1>Success: You Have Set Up a Virtual Host</h1>
</body>
</html>
保存并退出
第四步设置虚拟主机
下一步是进入nginx配置文件本身。
sudo vi /etc/nginx/conf.d/virtual.conf
虚拟主机文件已经在您的虚拟服务器上几乎完全设置。要完成,只需匹配以下配置,根据需要修改服务器名称和文件位置:
#
# A virtual host using mix of IP-, name-, and port-based configuration
#
server {
listen 80;
# listen *:80;
server_name example.com;
location / {
root /var/www/example.com/public_html/;
index index.html index.htm;
}
}
保存并退出。
第五步 - 重新启动nginx
我们对配置进行了很多更改。重新启动nginx并使更改可见。
/etc/init.d/nginx restart
可选第六步 - 设置本地主机
如果您使用实际的域或IP地址测试虚拟服务器,则不需要设置本地主机。但是,如果您使用的是不属于自己的通用域,那么这将确保在您的计算机上,您可以自定义它。
对于此步骤,请确保您在计算机本身,而不是您的VPS。
要继续此步骤,您需要知道计算机的管理密码,否则您将需要使用实际的域名或IP地址来测试虚拟主机。
假设你有管理员权限(通过键入su并输入正确的密码获得),这里是如何设置本地主机。
在本地计算机上,键入:
nano /etc/hosts
您可以将本地主机的详细信息添加到此文件,如下面的示例所示。只要有IP地址和服务器名称的行存在,指向您的浏览器,例如example.com将给您所指定的相应IP地址的所有虚拟主机详细信息。
# Host Database
#
# localhost is used to configure the loopback interface
# when the system is booting. Do not change this entry.
##
127.0.0.1 localhost
#Virtual Hosts
12.34.56.789 www.example.com
但是,最好在完成后从本地hosts文件夹中删除这些补充地址,以避免任何未来的混乱。
第七步 - 查看您的虚拟主机在操作
完成虚拟主机的设置后,您可以看到它如何在线。将浏览器指向您的域名或IP地址,您应该看到该页面显示“成功 - 您已设置虚拟主机”
添加更多虚拟主机
要创建其他虚拟主机,您只需重复上述过程,小心地每次使用适当的新域名设置新的文档根。然后只需将新的虚拟主机信息复制并粘贴到nginx Config文件中,如下所示
#
# A virtual host using mix of IP-, name-, and port-based configuration
#
server {
listen 80;
# listen *:80;
server_name example.com;
location / {
root /var/www/example.com/public_html/;
index index.html index.htm;
}
}
server {
listen 80;
# listen *:80;
server_name example.org;
location / {
root /var/www/example.org/public_html/;
index index.html index.htm;
}
}
centos 7 httpd 配置虚拟主机出错,使用原配置可以正常启动!
配置文件有问题
你看下httpd.conf最后面的其他站点大致配置文件
<VirtualHost *:80>
DocumentRoot "/var/www/html/test"
#PHPINIDir /var/www/html/test/
ServerName test.com
ServerAlias www.test.com
ErrorLog logs/test.com-error_log
CustomLog logs/test.com-access_log combined
<Directory />
Options Indexes FollowSymLinks
DirectoryIndex index.php index.html
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
Linux(centos5.4 配置虚拟主机出现404错误)
楼主,你好。
404错误表示 页面 未找到。
我建议你在
/server/apache/htdocs/upload
和
/server/apache/htdocs/shop.upload
里各放一个文件名为 index.html 的测试页面,然后再看问题是否发生。
centos 5.5系统的 帮忙解决个问题,Apache下配置的虚拟主机!弄二级域
我就是在VPS(linux)上配置虚拟机放多个网站的,
你要在一台服务器上放多个网站,一个IP,基于域名设置虚拟主机就可以了,
如果你的不同站点有不同的一级域名,最好用一级域名,如只有一个一级域名,那其他的站就用二级域名吧
Apache下基于域名的虚拟主机配置
它的优势就是不需要更多的IP地址,容易配置,不需要其它软硬件,现代的浏览器大多都支持这种方式。与基于IP的虚拟主机一样,你需要编辑文件/etc/httpd/conf/httpd.conf
第一个虚拟机为默认主机
NameVirtualHost 192.168.11.2
《VirtualHost 192.168.11.2》
ServerAdmin webmaster@yourdomain.com //管理员邮箱
DocumentRoot /home/httpd/sales.yourdomain.com //根目录
ServerName sales.yourdomain.com //域名
ErrorLog /var/log/httpd/sales.yourdomain.com/error_log
TransferLog /var/log/httpd/sales.yourdomain.com/access_log
《/VirtualHost》
《VirtualHost 192.168.11.2》
ServerAdmin webmaster@yourdomain.com
DocumentRoot /home/httpd/hr.yourdomain.com
ServerName hr.yourdomain.com
ErrorLog /var/log/httpd/hr.yourdomain.com/error_log
TransferLog /var/log/hr.yourdomain.com/access_log
《/VirtualHost》
接着分别创建目录
/home/httpd/sales.yourdomain.com,
/var/log/httpd/sales.yourdomain.com,放相应的网站内容到目录/home/httpd/sales.yourdomain.com下即可,并确保你内部的DNS指定sales.yourdomain.com的A记录到IP地址192.168.11.4 。
注: 你需要加NameVirtualHost 指示在最前面,下面依次为各个虚拟主机,为了让它工作,你需要sales.yourdomain.com, hr.yourdomain.com的DNS都指向IP地址192.168.11.2
centos6.2安装好lamp环境后,要配置虚拟主机的目录 但是找不到apache下
在/usr/local/apache/conf/extra 里面
pwd是显示当前的目录
cat查看文件内容