隔壁网

来吧兄弟,一起玩一起讨论!

您需要 登录 才可以下载或查看,没有帐号?注册

x
本帖最后由 funmonkey 于 2012-8-1 23:16 编辑

群晖官方宣传DSM系统可以安装多达30个的网站,
我们可以根据不同需要安装CMS系统,论坛讨论区,博客系统等,
但在访问上如何实现真正的多网站共存,官方并没有给出具体的解决方案

一般情况下,有两种方法来进行
第一种方法:
我们在控制面板----Web服务---虚拟主机下设置相应的端口,通过端口来访问
如图:


要访问CMS系统-joomla  就需要 通过 www.myweb.com:9100 来访问
要访问discuz                就需要通过 www.myweb.com:8010 来访问
......

假设网站域名是:www.myweb.com (并已经设置好IP地址指向NAS的IP,端口设置为9092)
就需要 通过 www.myweb.com:9092 来访问
另外一个网站域名是:www.otherweb.com (并已经设置好IP地址指向的NAS的IP,端口设置为8012)
就需要 通过 www.otherweb.com:8012 来访问

这种方法最大的弊端是要记住端口号 ,如果是30多个网站,你自己都能记住每一个端口号的话,I 服了you

第二种方法:
通过在文件总管--Web目录 建立相应的目录,通过网站地址后输入目录名进行访问
如图



要访问CMS系统-joomla  就需要 通过 www.myweb.com/joomla 来访问
要访问discuz                就需要通过 www.myweb.com/discuz 来访问
......

假设网站域名是:www.myweb.com (并已经设置好IP地址指向我们的NAS的IP,目录名为myweb)
就需要 通过 www.myweb.com/myweb  来访问
另外一个网站域名是:www.otherweb.com (并已经设置好IP地址指向NAS的IP,目录名为otherweb )
就需要 通过 www.otherweb.com/otherweb  来访问

这方法虽然比第一个要好,但还是繁琐,不容易识别,你总不能把网站地址给人家,还要人输入一个目录名吧?

显然这两种都不是最好的方法,离我们要实现的私有虚拟主机还有很长的距离


下面介绍一个方法,可以通过一个php文件检测浏览器输入地址来实行真正的自动转向,让你的Nas真正实行多主机并存,而且神不知鬼不觉,呵呵

把以下代码保存为 index.php ,并放到 web 目录下
  1. <?php
  2. $url = $_SERVER['HTTP_HOST'];
  3. if($url == 'www.myweb.com'){
  4. echo"<script>window.location.href='http://www.myweb.com/myweb';</script>";
  5. }else if($url == 'myweb.com'){
  6. echo"<script>window.location.href='http://www.myweb.com/myweb';</script>";
  7. }else if($url == 'www.otherweb.com'){
  8. echo"<script>window.location.href='http://www.otherweb.com/otherweb';</script>";
  9. }else if($url == 'otherweb.com'){
  10. echo"<script>window.location.href='http://www.otherweb.com/otherweb';</script>";

  11. }else{
  12. echo "地址错误";
  13. }
  14. ?>
复制代码
简单介绍一下上面的代码

如果地址输入 是www.myweb.com,就转向http://www.myweb.com/myweb
或者地址输入 是myweb.com,就转向http://www.myweb.com/myweb
或者地址输入 是www.otherweb.com,就转向http://www.otherweb.com/otherweb
或者地址输入 是otherweb.com,就转向http://www.otherweb.com/otherweb
否则  显示 地址错误  


通常来说,我们的网站访问有两种情况,一种是直接输入域名地址:   www.myweb.com
另一种是更加简单把www省略,直接输入  myweb.com
所以在检测时都要把这两种情况计算在内

大家试试啦!

当然,我们还可以继续完善上面的代码,增加一个安全保障
因为我们浏览Nas系统日志时,经常发现有很多IP地址访问到NAS,

由于我设置了自动阻隔 原因,所以凡是15分钟内输入2次错误密码的都会封锁IP地址360天
如图



估计很多是由于瞎逛或通过搜索
无意中到达NAS的登陆页面的,而造成的

为避免这情况的发生和增加安全的保障,所以我对上面的代码第12行后做了修改,


  1. }else{
  2. echo "<script>window.location.href='404.html';</script>";
  3. }
  4. ?>
复制代码

如果除了上面指定的地方访问外,输入其他地址访问的均自动转向到一个404页面

相信看到这个熟悉的画面,多数人的第一反应就是按重启键


话又说回来,这个只是防君子不防小人的做法,
不过用一下又何妨呢.........


把以下代码保存为 404.html文件,同样放置到web目录下
404.html文件代码如下
  1. <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
  2. <html dir="ltr" lang="zh-CN"><head>
  3. <meta charset="UTF-8">
  4. <title>Error 404 - Not Found</title>
  5. </style>

  6. <meta http-equiv="Content-Type" content="text/html; charset=gb2312"><style type="text/css">
  7. <!--
  8. body,td,th {
  9.         color: #FFF;
  10.         font-size: 18px;
  11. }
  12. body {
  13.         background-color: #0402a4;
  14. }
  15. -->
  16. </style></head>
  17. <body class="error" onselectstart="return false" oncontextmenu="return(false)">
  18. <p>A problem has been detected and Browser has been shut down to prevent damage to your computer. </p>
  19. <p>404_NOT_FOUND</p>
  20. <p>If this is the first time you've seen this stop error screen, refresh your browser. If this screen appears again, follow these steps: </p>
  21. <p>Check to be sure you have adequate disk space, if a driver is identified in the stop message, disable the driver or check with the manufacturer for driver updates. Try changing video adapters. </p>
  22. <p>Check with your hardware vendor for any BIOS updates. Disable BIOS memory options such as caching or shadowing. If you need to use safe Mode to try again, restart your browser, press Ctrl+Shift+Delete to access Clear recent History, and then beside Time range to clear, click Everything, and then select clear now. </p>
  23. <p>Technical information:</p>
  24. <p>*** STOP:0*00000001(0*00000000, 0*00000001, 0*00000002, 0*00000003, 0*00000006)</p>
  25. <p>Beginning dump of physical memory</p>
  26. <p>physical memory dump complete</p>
  27. <p>Contact your system administrator or technical support group for further assistance. </p>

  28. </body></html>
复制代码
以上内容均来源网络,我只是以此抛砖引玉,如你有更好的方法,欢迎跟帖交流。

funmonkey
2012-0712

--------------------------------------------------------------------------------------
本人其他分享帖子

DS211学习心得(一)建立私有的在线文件分享系统http://www.gebi1.com/thread-23779-1-1.html
DS211学习心得(二)添加第三方套件http://www.gebi1.com/thread-23780-1-1.html
1

查看全部评分

分享到 :
6 人收藏

4 个回复

倒序浏览
fttbcm  督察 | 2012-7-12 08:06:06
很好的帖子收藏了。
话说这个404页面很有个性哦。
momo 互助团队  管理员 | 2012-7-12 13:36:48
不错写得很好,不过新手要仔细研究才行
be840  VIP贵宾 | 2012-7-13 00:57:48
很好很强大,不过没有网页基础,不会啊
微风  发烧38℃ | 2012-7-28 16:30:51
学习了,谢谢
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|隔壁网 ( 粤ICP备14056481号-1 )

Powered by Discuz! X3.3 © 2001-2016 Comsenz Inc.

返回顶部