再见了,ICP备(六)虚拟主机的其他应用以及与IPowerWeb空间的php.ini相关的各种问题

Linux, 技术心得 Add comments

  买了虚拟主机,除了放Blog,还可以做些什么用?IPowerWeb的空间看起来还不错,用起来有哪些毛病,怎么解决?下面我们来讲这些问题。

  一、虚拟主机的其他应用
  除了Blog,php空间当然可以有点别的用处,比如:

  1、网盘
  1500G容量的空间,当然可以用来存放点东西,但是php下的网盘程序或者是文件分享程序(区别在于是否提供提取码,供别人下载),基本上没有特别著名和权威的。
  如果要用有提取码的,我推荐使用“拓网文件上传共享系统V1.0”(该公司现在似乎已经遗忘了这个php产品,已经全面转向asp产品了),这个东西的免费版可以从网上随意下到,但是不支持用户管理(也就是谁都可以上传,建议在上传页面用.htaccess文件设一个密码)。它提供了上传、管理文件和提取码的功能。
  如果只是要一个自己保存文件的东西,这个更适合:Uploader,搜索“Uploader Samoa汉化版”即可下载到。这个提供了用户管理,但是不提供给别人下载的功能,只是自己使用而已;但是你可以通过直接提供地址、或者使用WordPress的WP-DownloadManager插件来实现类似于提取的下载。
  注意,要上传文件,请确保php.ini中的file_uploads为ON,并且以下几项最好达到或者超过我所说的数值:

max_execution_time = 600
max_input_time = 180
memory_limit = 64M
post_max_size = 210M
upload_max_filesize = 200M

  2、WebFTP
  顾名思义就是在网页上使用的FTP软件,但是我高估了它的作用,以为”保存到本地“的功能意味着可以”保存到服务器“,结果在服务器上安装之后,发现还是只能下载到我的电脑上,实现”从一台服务器下载另一台服务器的文件“还需要别的方法(下面会说)。
  虽然如此,但精致的界面和功能还是让我想要推荐一下这个软件:net2ftp,我觉得其实可以在校园网或者单位内网安装这个东西,可以省去大部分人使用FTP客户端的麻烦。

  3、文件转移
  我想从英国的主机商那里把我以前上传的一些文件转移过来(好几G,下载到本地再上传到美国估计要几天时间),条件是:

  • 两台主机之间对传很快,控制者(我)进行中转则很慢
  • 两者的FTP都不支持FXP
  • 两者都是php空间,所有的文件都可以通过http或者FTP来下载
  • 两者都不提供SSH

  这种时候应该怎么让做呢?首先想到的是上面那个网页FTP,但是不如人愿;然后想到的是利用Cron来调用wget,但是IPower控制面板中的Cron似乎在权限上做了一点限制(或者是我不会用吧),未能成功;第三想到的是利用php调用系统命令,或者php自己的下载功能来下载,但我是php代码盲,看懂一半还行,写几乎一句都写不出来,所以决定上网寻找已经做好的工具……还真有
  (1)Rapidget(也叫a2b)
  这个玩意明确写着唯一的功能就是在一个服务器上,从另一个服务器下载文件……非常小巧,但做得很不错,能自己选择保存路径、能使用代理、还有进度条,唯一的问题是它是基于php的自身函数来下载文件的,所以受php.ini中文件大小、运行时间和内存等的限制。由于网上已经很难下载到,连作者都不提供下载了,所以我放上来给大家。

  Rapidget (35.5 KiB, 511 hits)

  (2)PhpSpy
  这是一个php后门程序,可以管理文件,最重要的是可以执行命令。所以把这个程序上传,并且上传一个URL.dat的要下载文件的文件名列表(用FTPRush在源FTP上列出),用

wget -i URL.dat -B http://Example.com/example/

  就好了,其中-i表示从文件读取要下载的文件链接;-B从文件读取的链接需要加上前缀(因为我在URL.dat里只放了文件名)。这个方法比前一个方法更适合于下载大量文件,而且由于调用系统命令,不受php的内存等限制。但过于多的文件还是要考虑超时问题,建议把php.ini中的超时设长一点,并且以此不要下载太多的文件。下载地址http://www.4ngel.net/
  我就是用了这第二种方法,一个小时不到就把4G多的文件转移过来了。两者之间对传的速度超过2M/s(Rapidget测的)。

  当然,php空间可以装论坛、CMS等各种玩意,这些东西网上广为流传,我这里就不介绍了。

  二、IPowerWeb空间的Bug
  1、Zend问题
  我知道旧版本的Zend和php5不兼容,所以当你选择php版本为php5的时候,默认的php.ini文件中没有Zend一项,而且IPower提供的Zend模块也不够新,加上了Zend的内容估计也不能运行。
  但是php4默认不开Zend也太不够厚道了,但是当你选了php5再改回php4的时候,默认的文件就有Zend这一项了,我也不知道怎么搞的……反正无论如何,如果你发现自己的站点没有打开Zend,在php.ini的末尾加入以下内容(路径仅适用于IPowerWeb的虚拟主机,其他空间请自行修改路径)

[Zend]
zend_optimizer.optimization_level=15
zend_extension_manager.optimizer=/usr/local/Zend/Zend-2.5.7/lib/Optimizer-2.5.7
zend_extension_manager.optimizer_ts=/usr/local/Zend/Zend-2.5.7/lib/Optimizer_TS-2.5.7
zend_extension=/usr/local/Zend/Zend-2.5.7/lib/ZendExtensionManager.so
zend_extension_ts=/usr/local/Zend/Zend-2.5.7/lib/ZendExtensionManager_TS.so

  2、phpMyAdmin问题
  IPowerWeb空间的瓶颈似乎在Web服务器和MySQL服务器之间的连接,从Web服务器登录数据库实在是缓慢,导致装在Web服务器中的phpMyAdmin(比如WordPress的WP-phpMyAdmin插件)几乎从来不能正常运行。我的建议是:一、用IPower控制面板中的那个phpMyAdmin,反正默认都是UTF8,用起来也没啥问题;二、像我一样喜欢追求新版本的,请自行修改php.ini以提供够大的内存和够长的超时时间……(要修改的条目前面已经说过了)

  3、Session问题
  这是最致命的问题,当你装上我这里提到的Uploader,”拓网上传系统“和WP-phpMyAdmin之后会发现,前者如果不记录登陆状况就会自动跳出,后两者根本无法登陆,我仔细研究发现是session无法启用的问题。但是上网搜遍了,都说session问题是php.ini中配置的问题,但是这么专业的公司怎么会在默认配置文件中写错呢?
  事实证明,不要迷信权威,要自己试验,我把[Session]节中的session.save_path由默认的var/tmp-sessions(好象是这个,忘了)改成了我在虚拟主机的web根目录下建的一个目录,并且把权限改为777,果然能用了!看来,要在IPower空间中使用session,请自行建立一个目录并且把完整地址(控制面板中左栏显示的很长的那个Linux下的完整地址)设为session.save_path。

  至此,整个IPowerWeb空间已经搞定,我的Blog也运行自如了,最后一集是感慨和废话……敬请期待。

Related posts:

  1. 慎改Android的Hosts文件
  2. 在国行双网机(如i909/i809)上使用Android Market购买app研究小结
  3. 再谈不要乱改Android的hosts文件

4 Responses to “再见了,ICP备(六)虚拟主机的其他应用以及与IPowerWeb空间的php.ini相关的各种问题”

  1. ZRZ Says:

    国外主机都是那么大的空间,但我就一直没想到很好的用途……

  2. WG Says:

    很简单啊,做一个巨大的下载站就好了,我就做了另一个Blog,可以赚广告费……

  3. 虚拟主机空间打开Zend Optimizer的相关问题 | LilyStudio WilliamGates Says:

    [...]   还记得我在这篇文章里提到过IPowerWeb的空间不支持php5打开Zend Optimizer么?现在看起来是我搞错了,但是IPowerWeb给的默认值是不打开Zend Optimizer的,就是因为这一点害得我研究了半天。 [...]

  4. 虚拟主机空间打开Zend Optimizer的相关问题 | WilliamGates Blog Says:

    [...]   还记得我在这篇文章里提到过IPowerWeb的空间不支持php5打开Zend Optimizer么?现在看起来是我搞错了,但是IPowerWeb给的默认值是不打开Zend Optimizer的,就是因为这一点害得我研究了半天。 [...]

Leave a Reply

XHTML: You can use these tags: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong> <pre lang="" line="" escaped="" highlight="">

LilyStudio & WordPress & N.Design Studio
Entries RSS Comments RSS Log in