几天前在Hostloc发了一贴:香港WHMCS演示站。 一个名叫babytomas的小家伙说我是安装到使用DNSPOD的分线解析,从而使居于美国的WHMCS的服务器检测我的域名的IP是Hostgator的IP。 我当场反驳了他的观点,但是他并没有认识到自己的错误,仍然满怀信心地把自己的方法贴出来: 我实在是不忍心看到一个青少年继续错误下去,那么今天我就来个测试,让大家看看谁是谁非! 首先,我到DNSPOD处做好分线解析(cnwhmcs.yzs.me): 并且到Chinaz Ping了一下,以确认DNS记录已生效: 到http://www. […]
XEN VPS上使用ISO安装Windows Server 2012(解决提示:缺少计算机所需的介质驱动程序)
今天在给一个XEN的VPS用ISO安装系统(你没看错,我也没打错,的确是XEN)。 因为是XEN,虚拟机,无DVD驱动器,也不给你从面板挂载ISO,因此只能从硬盘安装。 大概的步骤是这样的: 下载ISO到另一个分区——EasyBCD添加ISO启动项——重启——登录VNC,选择ISO的那一项…… 上面这几步都很顺利,但是到安装那就出问题了: 提示:缺少计算机所需的介质驱动程序。这可能是 DVD、U 盘或硬盘驱动程序。如果你有包含该驱动程序的 CD、DVD 或 U 盘,请立即插入。注意:如果Windows 安装介质在 DVD 驱动器或 U 盘中,你可以在这个步骤中放心地将其取出。 X […]
解决使用iptables转发FTP端口后提示无法读取目录列表(MLSD)
几天前把拉斯维加斯服务器的数据转移到了香港的服务器,想到有些人可能没那么快知道,就使用iptables进行端口转发,实现FTP连接到拉斯维加斯服务器的IP,最后是到达香港的FTP服务器。 这实现不难,首先修改配置,实现开机就打开内核转发:
1 |
vim /etc/sysctl.conf |
把默认的:
1 |
net.ipv4.ip_forward = 0 |
改成:
1 |
net.ipv4.ip_forward = 1 |
如图: 然后执行:
1 |
echo 1 > /proc/sys/net/ipv4/ip_forward |
打开内核转发功能。 使用下面两条命令添加转 […]
APC3.1.9自动安装脚本For DirectAdmin with PHP-CLI
前面发过一个APC Shell Script For PHP-CGI,经过Zeraba的指导,使用apc.php看了下APC的命中率,发现无论怎样,命中数只有“1”,明显APC并没有发挥它应有的用途。同时也发现,不管是什么opcode的PHP组件,都是只能在探针那看个版本…… 既然PHP-CGI有问题,那就换PHP-CLI,但是DirectAdmin的PHP-CLI模式也有问题,那就是无法以特定身份去创建执行PHP程序,这就使得用户的网站某些目录需要设置rwxrwxrwx,非常麻烦,而且也不安全。 要解决DirectAdmin的PHP-CLI的问题,大家可以参考:实现DirectAdmin使用 […]
实现DirectAdmin使用PHP-CLI模式的站点独立用户与查看各用户资源占用情况
用过DirectAdmin的都知道,CLI是个坑爹货:网站目录非rwxrwxrwx(777)权限无法写入,无法查看是哪个用户占用较多的资源,甚至无法正常使用opcode cache的PHP组件。 我们来研究下DirectAdmin的站点的配置文件:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 |
# Auto generated apache config file by DirectAdmin version 1.42.1 # Modifying this file is not recommended as any changes you make will be # overwritten when the user makes any changes to his/her website # For global config changes that affect all Users, see this guide: # http://help.directadmin.com/item.php?id=2 # For local config changes that only affect one User, see this guide: # http://help.directadmin.com/item.php?id=3 # Frontpage requires these parameters in every httpd.conf file or else # it won't work. ServerRoot /etc/httpd <VirtualHost HIDE:80 > ServerName www.360buy.com ServerAlias www.360buy.com 360buy.com ServerAdmin webmaster@360buy.com DocumentRoot /home/admin/domains/360buy.com/public_html ScriptAlias /cgi-bin/ /home/admin/domains/360buy.com/public_html/cgi-bin/ UseCanonicalName OFF <IfModule !mod_ruid2.c> SuexecUserGroup admin admin </IfModule> <IfModule mod_ruid2.c> RMode config RUidGid admin admin RGroups apache access </IfModule> CustomLog /var/log/httpd/domains/360buy.com.bytes bytes CustomLog /var/log/httpd/domains/360buy.com.log combined ErrorLog /var/log/httpd/domains/360buy.com.error.log <Directory /home/admin/domains/360buy.com/public_html> Options +Includes -Indexes php_admin_flag safe_mode OFF php_admin_flag engine ON php_admin_value sendmail_path '/usr/sbin/sendmail -t -i -f admin@360buy.com' </Directory> </VirtualHost> |
关键,就在SuexecUserGroup这里,这里定义了站点的执行PHP脚本时所使用的用户身份,这样可以给不同网站的目录不同的所有者,且无需再特意给某些文件设置rwxrwxrwx(777)权限。 然而,这个东西在CGI模式下工作正常,而CLI却不正常。貌似mod_ruid2.c是Su […]