侧边栏壁纸
博主头像
落叶人生博主等级

走进秋风,寻找秋天的落叶

  • 累计撰写 130562 篇文章
  • 累计创建 28 个标签
  • 累计收到 9 条评论
标签搜索

目 录CONTENT

文章目录

万网虚拟主机批量虚拟空间

2023-12-12 星期二 / 0 评论 / 0 点赞 / 102 阅读 / 2442 字

折腾了快一天,各种尝试,总算是搞通了万网的虚拟主机的一些设置和限制了。万网的虚拟主机宿主操作系统应该用的是CentOS 6(从php探针中拿到的内核版本确定的)apache版本应该是2.2。cento

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

  • 万网的虚拟主机宿主操作系统应该用的是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 NoneExpiresActive OnExpiresDefault "access plus 1 day"RewriteEngine onRewriteBase /# Break rewrite loop conditionRewriteCond %{HTTP_HOST}           ^万网主机名/.my3w/.com$  [OR]RewriteCond %{HTTP_HOST}           ^万网主机ip$          [OR]RewriteCond %{ENV:REDIRECT_STATUS} 200RewriteRule ^                      -                           [L]# Redirect example.com to www.example.comRewriteCond %{HTTP_HOST}           ^example/.com$RewriteRule ^(.*)$                http://www.example.com$1  [R=301,L]# Rewrite all the other domains to self dirRewriteRule ^(.*)                  %{HTTP_HOST}/$1  [DPI]# Treat /RewriteCond %{REQUEST_URI}         !/$RewriteCond %{REQUEST_FILENAME}    -dRewriteRule ^(.*)$                 $1/                         [DPI]

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

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

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

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

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

广告 广告

评论区