APACHE如何里一个站点绑定多个域名?用ServerAlias servername
APACHE2如何里一个站点绑定多个域名?用ServerAlias
以前很笨,要使多个域名指向同一站点总是这样写:
<VirtualHost *:80>
ServerAdmin i@kuigg.com
DocumentRoot /www/kuigg.com
ServerName kuigg.com
</VirtualHost>
<VirtualHost *:80>
ServerAdmin i@kuigg.com
DocumentRoot /www/kuigg.com
ServerName www.kuigg.com
</VirtualHost>
<VirtualHost *:80>
ServerAdmin i@kuigg.com
DocumentRoot /www/kuigg.com
ServerName abc.kuigg.com
</VirtualHost>
这样一来就等于绑了多少域名就开了多少虚拟主机…………
后来看了看书,发现有个叫”ServerAlias“的东西可以用
其实可以这样:
<VirtualHost *:80>
ServerAdmin i@kuigg.com
DocumentRoot /www/kuigg.com
ServerName kuigg.com
ServerAlias www.kuigg.com abc.kuigg.com
</VirtualHost>
要绑多少个域名都可以写在 ServerAlias 后面,用空格隔开即可
apache AH01630: client denied by server configuration错误解决方法
出现这个错误的原因是,apache2.4 与 apache2.2 的虚拟主机配置写法不同导致。
apache2.2的写法:
<VirtualHost *:80>
ServerName fdipzone.demo.com
DocumentRoot "/home/fdipzone/sites/www"
DirectoryIndex index.html index.php
<Directory "/home/fdipzone/sites/www">
Options -Indexes +FollowSymlinks
AllowOverride All
Order deny,allow
Allow from all
</Directory>
</VirtualHost>
如果在2.4中使用以上写法就会有apache AH01630: client denied by server configuration错误。
解决方法,apache2.4中
- Order deny,allow
- Allow from all
- Allow from host ip
- Require all granted
- Require host ip
修改后的配置如下:
- <VirtualHost *:80>
- ServerName fdipzone.demo.com
- DocumentRoot "/home/fdipzone/sites/www"
- DirectoryIndex index.html index.php
- <Directory "/home/fdipzone/sites/www">
- Options -Indexes +FollowSymlinks
- AllowOverride All
- Require all granted
- </Directory>
- </VirtualHost>
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步