万网虚拟主机批量虚拟空间
博客专区 > Feng_Yu 的博客 > 博客详情
万网虚拟主机批量虚拟空间
Feng_Yu 发表于1年前
万网虚拟主机批量虚拟空间
  • 发表于 1年前
  • 阅读 59
  • 收藏 1
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

摘要: 万网的空间都比较富足,如果用不完的话,完全可以劈出来搞多个虚拟主机空间来用

折腾了快一天,各种尝试,总算是搞通了万网的虚拟主机的一些设置和限制了。

  • 万网的虚拟主机宿主操作系统应该用的是CentOS 6(从php探针中拿到的内核版本确定的)
  • apache版本应该是2.2。centos6官方仓库带的版本就是2.2,在加上不支持Require all granted这种在2.4才有的配置
  • 启用了AllowOverride选项,所以允许在htdocs下放一个.htaccess

明白了这些限制之后,大致就知道.htaccess应该怎么写了。写之前务必确认你的指令可以工作在.htaccess,以及被apache 2.2支持。

已经一年都没玩过apache的配置了,2.2版本的配置都快忘光了,各种google查文档,七拼八凑之后最后贴配置:

FileETag None
ExpiresActive On
ExpiresDefault "access plus 1 day"

RewriteEngine on
RewriteBase /

# Break rewrite loop condition
RewriteCond %{HTTP_HOST}           ^万网主机名\.my3w\.com$  [OR]
RewriteCond %{HTTP_HOST}           ^万网主机ip$          [OR]
RewriteCond %{ENV:REDIRECT_STATUS} 200
RewriteRule ^                      -                           [L]

# Redirect example.com to www.example.com
RewriteCond %{HTTP_HOST}           ^example\.com$
RewriteRule ^(.*)$                http://www.example.com$1  [R=301,L]

# Rewrite all the other domains to self dir
RewriteRule ^(.*)                  %{HTTP_HOST}/$1  [DPI]

# Treat /
RewriteCond %{REQUEST_URI}         !/$
RewriteCond %{REQUEST_FILENAME}    -d
RewriteRule ^(.*)$                 $1/                         [DPI]

尽管apache支持不少批量虚拟主机的指令,比如VirtualDocumentRoot,可惜不能写在.htaccess,只能用Rewrite

为了便于自己调试,所以对于万网主机名和ip不进行URL重写,其余域名绑定过来的一律走htdocs/%{HTTP_HOST}

对于某些域名,如果希望控主机头跳转到www,就用中间那段配置即可:

# Redirect example.com to www.example.com
RewriteCond %{HTTP_HOST}           ^example\.com$
RewriteRule ^(.*)$                http://www.example.com$1  [R=301,L]

最后,只要把你的网站扔到htdocs/%{HTTP_HOST}即可。

标签: 万网 Apache
共有 人打赏支持
粉丝 146
博文 38
码字总数 45477
×
Feng_Yu
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: