2009年4月11日星期六

如何查看vps主机磁盘容量

使用SSH客户端登录vps,使用#free -m查看VPS内存大小,下面我查看我司vps特惠型磁盘如下图

vps磁盘大小

vps磁盘大小

从上面截图可以看到磁盘大小(Size)为1.0G,已经使用(Used)492M,还有(Avail)533M磁盘可用。

如何使用putty远程登录vps主机

购买我们的vps主机,在申请资料提交的邮箱里,我们会把相关开通资料发到你邮箱,其中就有一个hyper-vm 登录帐号,其中帐号的密码也是vps主机root的密码。

这里我假设您开通的vps主机的相关信息如下:

VPS主机IP:67.159.48.234

帐号:root

密码:vpstest99

下面我详细介绍使用通用的putty进行远程登录管理主机,首先下载putty软件,putty中文版本点击此下载,本地下载:putty_060cn ,下载后自行解压,双击putty.exe打开ssh客户端登录软件,如下图所示:

使用putty登录vps图1

使用putty登录vps图1

在上面截图中,

主机名称(或IP地址):vps主机ip地址

端口:默认为22

保存的会话:我的 vps

然后单击保存按钮,这样主机名称那栏在下次登录的时候,可以直接双击“我的VPS”进行登录,最后如下图所示:

使用putty登录vps图2

使用putty登录vps图2

然后单击“打开”按钮,弹出如下窗口

使用putty登录vps图3

使用putty登录vps图3

在login as:处输入 root 后按回车,提示输入密码,输入相应的密码(注意输入密码不在屏幕上显示),这样就成功通过putty远程登录vps,可以远程安装软件,配置系统相关设置了。

vps主机安装配置php强化模块eaccelerator

环境:centos5

确保系统已经安装好php-devel、autoconf、automake、m4、libtool、 gcc(预编译用) make(编译用)等软件,可使用rpm -q 软件包名查看,如未安装,使用yum -y install 软件包名进行安装。

eaccelerator官方网站:http://eaccelerator.net/

安装配置步骤如下:

1)下载源码包:本地下载地址:

# cd /usr/local/src

# wget http://bart.eaccelerator.net/source/0.9.5.3/eaccelerator-0.9.5.3.zip

2)解压源码包

# unzip eaccelerator-0.9.5.3.zip

#cd eaccelerator-0.9.5.3

3)利用phpize进行php程序的预处理

#phpize

4)预编译设置:

#./configure --enable-eaccelerator=shared --with-php-config=/usr/bin/php-config

5)编译:

# make

6)编译成功后安装

# make install

此时这个新编译的模块会被放置到/usr/lib/php/modules/eaccelerator.so中

7)修改php.ini和预先加载PHP模块

vi /etc/php.ini

按shift+g键跳到配置文件的最末尾,加上以下配置信息:

[eaccelerator]
extension=”eaccelerator.so”
eaccelerator.shm_size=”16″
eaccelerator.cache_dir=”/tmp/eaccelerator”
eaccelerator.enable=”1″
eaccelerator.optimizer=”1″
eaccelerator.check_mtime=”1″
eaccelerator.debug=”0″
eaccelerator.filter=”"
eaccelerator.shm_max=”0″
eaccelerator.shm_ttl=”0″
eaccelerator.shm_prune_period=”0″
eaccelerator.shm_only=”0″
eaccelerator.compress=”1″
eaccelerator.compress_level=”9″

预先加载php模块

#vi /etc/ld.so.conf

#ldconfig <–把模块导入高速缓存

在文件尾添加

/usr/lib/php/modules

8)建立eaccelerator的暂存数据

mkdir /tmp/eaccelerator
chmod 0777 /tmp/eaccelerator

9)使用ab命令测试一下网站效率,如下:

[root@www tmp]# ab -dkS -n100 -c100 http://localhost/phpinfo.php
This is ApacheBench, Version 2.0.40-dev <$Revision: 1.146 $> apache-2.0
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Copyright 2006 The Apache Software Foundation, http://www.apache.org/

Benchmarking localhost (be patient).....done

Server Software: Apache
Server Hostname: localhost
Server Port: 80

Document Path: /phpinfo.php
Document Length: 48658 bytes

Concurrency Level: 100
Time taken for tests: 1.52041 seconds
Complete requests: 100
Failed requests: 1
(Connect: 0, Length: 1, Exceptions: 0)
Write errors: 0
Keep-Alive requests: 0
Total transferred: 4879895 bytes
HTML transferred: 4865795 bytes
Requests per second: 95.05 [#/sec] (mean)
Time per request: 1052.041 [ms] (mean)
Time per request: 10.520 [ms] (mean, across all concurrent requests)
Transfer rate: 4529.29 [Kbytes/sec] received

Connection Times (ms)
min avg max
Connect: 0 3 19
Processing: 423 647 1016
Total: 423 650 1035

10)重新apache

# apachectl restart

11)验证eAccelerator是否生效

在命令行下运行

#php -v

如果输出想如下的信息

[root@www tmp]# php -v
PHP 5.1.6 (cli) (built: Jul 16 2008 19:53:00)
Copyright (c) 1997-2006 The PHP Group
Zend Engine v2.1.0, Copyright (c) 1998-2006 Zend Technologies
with eAccelerator v0.9.5.3, Copyright (c) 2004-2006 eAccelerator, by eAccelerator
[root@www tmp]#

证明已经加载成功,且生效

12)重新使用ab命令测试一下网站效率,如下:

[root@www tmp]# ab -dkS -n100 -c100 http://localhost/phpinfo.php
This is ApacheBench, Version 2.0.40-dev <$Revision: 1.146 $> apache-2.0
Copyright 1996 Adam Twiss, Zeus Technology Ltd, http://www.zeustech.net/
Copyright 2006 The Apache Software Foundation, http://www.apache.org/

Benchmarking localhost (be patient).....done

Server Software: Apache
Server Hostname: localhost
Server Port: 80

Document Path: /phpinfo.php
Document Length: 51378 bytes

Concurrency Level: 100
Time taken for tests: 0.551591 seconds
Complete requests: 100
Failed requests: 0
Write errors: 0
Keep-Alive requests: 0
Total transferred: 5151900 bytes
HTML transferred: 5137800 bytes
Requests per second: 181.29 [#/sec] (mean)
Time per request: 551.591 [ms] (mean)
Time per request: 5.516 [ms] (mean, across all concurrent requests)
Transfer rate: 9120.89 [Kbytes/sec] received

Connection Times (ms)
min avg max
Connect: 0 12 16
Processing: 12 237 535
Total: 12 249 551
[root@www tmp]#

13)总结,从第9和第12的Time taken for tests:项目,可以看出,加载eAccelerator后效率提高了快1倍。

在vps主机配置LAMP环境

系统环境:centos5

目的:使用yum快速配置LAMP(linux+apache+mysql+php)环境

1)安装:

# yum -y install httpd mysql-server php php-devel php-mysql php-mcrypt php-mbstring php-gd

其中:

httpd:web服务器包

mysql-server:mysql数据库服务器包

php:php包

php-devel:php开发包

php-mysql:使得php可以连接mysql数据库包

php-mcrypt:标准php模块,提供加密库支持

php-mbstring:支持多字节支付(使用phpmyadmin需要)

php-gd:php图形库

2)配置httpd

# vi /etc/httpd/conf/httpd.conf

2-1)修改语言编码

#找到下面这一行,应该大概在747行左右

AddDefaultCharset UTF-8

改成:

# AddDefaultCharset UTF-8
由网页表头宣告,直接注销即可

3)新建测试网页

进入网站根目录文件夹

# cd /var/www/html

新建一个phpinfo.php文件

# touch phpinfo.php

输入到phpinfo.php文件里

# echo ‘’ > phpinfo.php

4)把相应的服务使得开机自动启动

#  chkconfig --level 345 httpd on
# chkconfig --level 345 mysqld on

5) 启动服务

# /etc/init.d/httpd start
# /etc/init.d/mysqld start

6)添加防火墙规则

7)测试php网页服务器

在游览器地址栏输入:http://youipaddress/phpinfo.php,如看到如下类似画面,就证明配置成功了

vps-phpinfo信息图

vps-phpinfo信息图

8)测试php与mysql连接

关于php与mysql连接测试,请访问在vps主机安装php探针iProber

使用phpmyadmin管理mysql数据库

概述:phpMyAdmin是一个用PHP编写的,可以通过互联网控制和操作MySQL。通过phpMyAdmin可以完全对数据库进行操作,例如建立、复制/删除数据等等。

环境:centos5

目的:在上一篇在vps主机配置LAMP环境中,已经成功在vps主机构建了LAMP环境,这篇文章详细描述如何配置phpmyadmin2.11.93管理vps主机上的mysql数据库系统

步骤

1)下载与解压

新建一个受保护的文件夹

# mkdir /var/www/html/protect

进入相应的目录

# cd /var/www/html/protect

到官方下载phpmyadmin tar.gz格式文件 本地下载:phpmyadmin-21193-all-languages-utf-8-onlytar

# wget http://prdownloads.sourceforge.net/phpmyadmin/phpMyAdmin-2.11.9.3-all-languages-utf-8-only.tar.gz

解压刚才下载的文件

# tar zxvf phpMyAdmin-2.11.9.3-all-languages-utf-8-only.tar.gz

删除已经解压的压缩包释放空间

# rm -rf phpMyAdmin-2.11.9.3-all-languages-utf-8-only.tar.gz

重命名解压后的文件名:

# mv phpMyAdmin-2.11.9.3-all-languages-utf-8-only phpmyadmin

2)配置phpmyadmin

进入刚重命名的文件夹

# cd phpmyadmin

新建配置文件(使用默认的样本复制)

# cp config.sample.inc.php config.inc.php

编辑新建的配置文件

#vi config.inc.php

修改大概在17行的 $cfg['blowfish_secret'] = ”; 改为: $cfg['blowfish_secret'] = ‘test99′; 其中修改后的test99处您可以任何内容,这里只是用test99举例,然后保存

3)测试

在游览器地址啦输入:http://youipaddress/protect/phpmyadmin,就能看到如下信息了:

phpmyadmin图1

phpmyadmin图1

现在你就可以使用phpmyadmin这款强大的图形界面工具管理数据库了,默认数据库管理员帐号为:root 密码为空,记得登录进去修改root密码

在vps主机安装php探针iProber

iProber探针介绍

主要功能:
1、服务器环境探测:CPU、在线时间、内存使用状况、系统平均负载探测(支持LINUX、FreeBSD系统,需系统支持),操作系统、服务器域名、IP地址、解释引擎等
2、PHP基本特征探测:版本、运行方式、安全模式、Zend编译运行及常规参数
3、PHP组件支持探测:MYSQL、GD、XML、SESSION、SOCKET等组件支持情况
4、服务器性能检测:整数运算能力、浮点数运算能力、数据IO能力
5、自定义探测:MYSQL连接测试、MAIL发信测试、函数支持情况及PHP配置参数

环境:centos5 vps

目的:在protect保护目录下安装iProber探针 官方地址:http://www.depoch.net/download.htm

安装:

1)下载与安装:

在受保护目录新建一个iProber文件夹

# mkdir /var/www/html/protect/iProber

下载zip压缩包 本地下载:iProber压缩包

# wget http://depoch.net/download/11742329208989.zip

解压压缩包:

# unzip 11742329208989.zip

删除已解压的压缩包,释放空间

# rm -rf 11742329208989.zip

2)测试访问

在游览器地址栏输入:http://youipaddress/protect/iProber/iProber.php,将看到如下画面:

vps-iprober图1

vps-iprober图1

3)使用iProber自带的自定义检测项目测试php与mysql数据库连接,如下图所示:

vps-iprober图2

vps-iprober图2

在上图中:MYSQL服务器填写:localhost ;MYSQL用户名填写:root;MYSQL用户密码填写:(初始密码为空,不要填写);MYSQL数据库名称填写:test;然后按”CONNECT”按钮,如提示成功,就证明php连接数据库函数成功。

在vps主机安装phpsysinfo

概述:

phpSysInfo是一个能够显示主机系统信息的PHP脚本。包括:主机名,所用操作系统及内核版本,计算机运行时间,CPU,内存,SCSI设备,IDE设备,PCI设备和网络适配器,硬盘使用情况等信息。

环境:centos5

目的:在已经构建好的LAMP环境安装phpsysinfo,官方地址:http://phpsysinfo.sourceforge.net/

步骤:

1)下载与解压

进入受保护的目录

# cd /var/www/html/protect

下载压缩包 本地下载:phpsysinfo-254tar

# wget http://downloads.sourceforge.net/phpsysinfo/phpsysinfo-2.5.4.tar.gz

解压缩文件

# tar zxvf phpsysinfo-2.5.4.tar.gz

进入解压后的目录

#cd phpsysinfo

使用配置模板生成配置文件

# cp config.php.new config.php

修改复制的config.php文件,使其默认语言为中文

# vi config.php

把$default_lng=’en’;语句修改为:$default_lng=’cn’; 然后保存

2)测试

在游览器地址栏输入:http://youipaddress/protect/phpsysinfo,将出现如下画面:

vps-phpsysinfo图1

vps-phpsysinfo图1

在vps主机配置apache主机状态说明页面

在vps主机安装www服务后,除了提供服务外,重要的工作就是维护了。是否一定要额外安装其他的软件才能了解目前主机的状态呢?当然不是。可以通过apache提供的特殊功能来查询主机目前的状态,即mod_status模块。这个模块默认是关闭的,需要修改配置文件来启动它。

#vi /etc/httpd/conf/httpd.conf

先确定下面这行已经存在

LoadMofudule status_module modules/mod_status.so


#ExtendedStatus On

修改为:

ExtendedStatus On

#
# SetHandler server-status
# Order deny,allow
# Deny from all
# Allow from .example.com
#

修改为:


SetHandler server-status
Order allow,deny
Allow from all

接下来在游览器地址栏输入:http://youipaddress/server-status/,即可弹出如下画面:

主机的目前状态回复网页

主机的目前状态回复网页

输出的结果包括目前的时间、Apache重新启动的时间以及目前已经启动的程序等,在网页的下方还会显示每个程序的客户端与服务器端的连接状态。虽然显示的信息很简单,不过足以让您粗略了解主机的状态。需要注意的是,可将查阅者(allow from的参数)的权限限制严格一些。

在vps主机配置apache服务mod_info模块

概述:在centos5使用yum安装httpd,有加载过mod_info模块,此模块允许通过http://youipaddress/server-info/远程访问服务器配置文件报告,这模块提供广泛的服务配置,包含所有的安装模块和指令。

环境:centos5

步骤:

1)编辑主配置文件

# vi /etc/httpd/conf/httpd.conf

大概在914行

#
# SetHandler server-info
# Order deny,allow
# Deny from all
# Allow from .example.com
#

修改为:


SetHandler server-info
Order deny,allow
Deny from all
Allow from 192.168.1.0/24
Allow from 127.0.0.1

重启apache

# apachectl restart

2)测试:

在游览器地址栏输入:http://youipaddress/server-info/ 将弹出如下画面:

server-info图1(双击图片可放大查看)

server-info图1(双击图片可放大查看)

通过此页面,可以图形化详细配置文件。

在vps主机建立受保护的网页目录

概述:虽然保护apache数据方面,已经可以使用Order以及Limit针对IP网段或者主机名称来管理,但如果客户端是使用拨号连接取得的方式(国内的ADSL基本都是分配动态IP),那么IP会一直变动,如此一来那个受保护的目录用户就不能在任何地方进入了,此时如果能够使用密码保护的方式,用户输入帐号/密码即可取得浏览的权限,其实apache自带就提供这种认证功能,让我们可以轻松愉快地设置好保护的网页。

环境:centos5

目的:在已经安装好的LAMP环境下,网页根目录/vat/www/html下的子目录protect建立收保护的目录,访问此文件夹内容需要输入帐号/密码认证通过才可以访问。

步骤:

1)新建受保护目录protect

#mkdir /var/www/html/protect

# touch /var/www/html/protect/index.html

# echo “test the protect” > /var/www/html/protect/index.html

2)以root的身份处理httpd.conf的设置数据

编辑httpd.conf文件,让受保护的目录可以使用”.htaccess”。

# vi /etc/httpd/conf/httpd.conf

确定下面这几行是存在的

AccessFileName .htaccess

Order allow,deny
Deny from all

新建/etc/httpd/conf.d/protect.conf文件
输入如下内容:


AllowOverride AuthConfig
Order allow,deny
Allow from all

然后重启httpd服务
#apachectl restart

3)建立保护目录的“.htaccess”文件

特别提醒的是,此文件是在保护目录的下面,不要放错地方,操作如下:

# cd /var/www/htm/protect

# vi .htaccess

在文件里添加如下内容

AuthName  "Protetct test by .htaccess"
Authtype Basic
AuthUserFile /var/www/apache.passwd
require user protect

4)建立密码文件htpasswd

[root@www ~]# htpasswd -c /var/www/apache.passwd protect
New password: <--这里输入一次密码,注意,屏幕不会有任何信息
Re-type new password: <--这里再输入一次
Adding password for user protect
[root@www ~]#
查看是否已经建好protect帐号
[root@www ~]# cat /var/www/apache.passwd
protect:Vrf/iGfgn.fiM <--已经建立一个新用户
[root@www ~]#

5)测试:

在游览器地址栏输入:http://youipaddress/protect/将会弹出如下信息:

受保护模式的授权画面

受保护模式的授权画面

看到上面画面,输入你刚才第4步建立的帐号和密码,进入授权网页,您可以把一些数据不想让所有人取得,或者某些重要的apache主机分析数据,例如:在vps主机安装phpsysinfo在vps主机安装php探针iProber使用phpmyadmin管理mysql数据库、等数据都可以放置到保护文件夹下。

在vps主机构建SSL(HTTPs)网站

概述:在我们通常用“http://”这样的方式来访问网站的时候,传输内容是可能被别人截获的,因为其内容是通过明文传输,所以在传递一些隐私、以及密码相关的信息时,就显得非常的不安全。在一些比较正式的网站、以及一些银行相关的网站中,一些需要提交隐私或者重要级别比较高的密码时,都采用 “https://”的方式,来将传输内容加密,从而保证用户安全和避免隐私的泄漏。

环境:centos5 vps

目的:在vps主机架构一台使用https://ssl.15099.net的主机

步骤:

1)软件环境要求:

在已经架构的LAMP环境上,要使用https加密访问网站,https是利用SSL来加密传输的,利用mod_ssl帮我们制作好key以及凭证,所以需要先确保系统是否已经安装openssl和mod_ssl软件,如没有安装,使用下面命令安装:

# yum -y install openssl mod_ssl

2)建立自认证证书

2-1、生成私有证书:

# openssl genrsa -out ca.key 1024

2-2、建立用于申请的认证文件

[root@www ~]# openssl req -new -key ca.key -out ca.csr
You are about to be asked to enter information that will be incorporated
into your certificate request.
What you are about to enter is what is called a Distinguished Name or a DN.
There are quite a few fields but you can leave some blank
For some fields there will be a default value,
If you enter '.', the field will be left blank.
-----
Country Name (2 letter code) [GB]:CN
State or Province Name (full name) [Berkshire]:Guangdong
Locality Name (eg, city) [Newbury]:Guangzhou
Organization Name (eg, company) [My Company Ltd]:vps-hosting
Organizational Unit Name (eg, section) []:vps-hosting
Common Name (eg, your name or your server's hostname) []:ssl.15099.net
Email Address []:vps@15099.net

Please enter the following 'extra' attributes
to be sent with your certificate request
A challenge password []:
An optional company name []:
[root@www ~]#

2-3、生成自认证key
openssl x509 -req -days 365 -in ca.csr -signkey ca.key -out ca.crt
2-4、把生成的文件放置到正确的位置:
# mv ca.crt /etc/pki/tls/certs
# mv ca.key /etc/pki/tls/private/ca.key
# mv ca.csr /etc/pki/tls/private/ca.csr
2-5、 编辑apache SSL配置文件
# vi /etc/httpd/conf.d/ssl.conf

SSLCertificateFile /etc/pki/tls/certs/localhost.crt
修改为:
SSLCertificateFile /etc/pki/tls/certs/ca.crt

SSLCertificateKeyFile /etc/pki/tls/private/localhost.key
修改为:
SSLCertificateKeyFile /etc/pki/tls/private/ca.key
3、设置虚拟主机
# vim /etc/httpd/conf.d/VirtualHost.conf

增加如下内容:

NameVirtualHost *:443


SSLEngine on
SSLCertificateFile /etc/pki/tls/certs/ca.crt
SSLCertificateKeyFile /etc/pki/tls/private/ca.key

AllowOverride All

DocumentRoot /var/www/html/ssl.15099.net
ServerName ssl.15099.net

重启apache服务
# apachectl restart
4)建立测试文件
# mkdir /var/www/html/ssl.15099.net
# echo https-test > /var/www/html/ssl.15099.netindex.html
5)测试
在游览器地址栏输入:https://ssl.15099.net就可以访问刚才建立的index.html文件了

在vps主机安装webalizer日志分析软件

概述:

webalizer是一个高效的、免费的web服务器日志分析程序。其分析结果是HTML文件格式,从而可以很方便的通过web服务器进行浏览。

环境:centos5 vps

目的:在vps主机把http://vps.15099.net虚拟主机的日志统计到protect保护目录的webalizer子目录下

安装:

1)安装webalizer软件

# yum -y install webalizer

2)处理配置文件

# vi /etc/webalizer.conf
#确保下面这几行是正确的。其他的则保留默认值
LogFile /var/log/httpd/vps.15099.net-access_log
OutputDir /var/www/html/protect/webalizer
Incremental yes

3)建立受保护目录的数据

[root@www ~]# cp -a /var/www/usage/ /var/www/html/protect/webalizer
[root@www ~]#rm -rf /etc/httpd/conf.d/webalizer.conf
[root@www ~]#apachectl restart

4)测试执行webalizer的分析工作

[root@www ~]#webalizer

5)测试

在游览器地址栏输入:http://www.15009.net/protect/webalizer,正确输入相应的保护密码后,将出现如下画面:

webalizer分析工具所得的分析画面

webalizer分析工具所得的分析画面

单击 Nov 2008超链接,将显示当月的各项分析结果。

在vps主机apache服务配置ZendOptimizer

下载:

[root@www ~]# wget http://downloads.zend.com/optimizer/3.3.3/ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz  ← 下载Zend的源代码
--22:15:41-- http://downloads.zend.com/optimizer/3.3.3/ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz
Resolving downloads.zend.com... 66.114.49.160
Connecting to downloads.zend.com|66.114.49.160|:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: 10208541 (9.7M) [application/x-gzip]
Saving to: `ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz'

100%[====================================================================================================================>] 10,208,541 5.80M/s in 1.7s

22:15:43 (5.80 MB/s) - `ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz'
saved [10208541/10208541]

[root@www ~]#
[root@www ~]# tar zxvf ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz ← 展开被压缩的源代码
[root@www ~]# cd ZendOptimizer-3.3.3-linux-glibc23-i386 ← 进入Zend的源代码目录
[root@www ZendOptimizer-3.3.3-linux-glibc23-i386]# ./install.sh ←运行安装脚本

然后会出现对话方式的安装向导,图样如下:

[1] 选择OK,进入安装向导。

在vps安装zend-optimizer图1

在vps安装zend-optimizer图1

[2] 阅读协议后,选择EXIT。

在vps安装zend-optimizer图2

在vps安装zend-optimizer图2

[3]然后选择Yes同意使用协议。

在vps安装zend-optimizer图3

在vps安装zend-optimizer图3

[4] 设置安装目录,这里以默认的/usr/local/Zend为例,然后选择OK进入下一步。

在vps安装zend-optimizer图4

在vps安装zend-optimizer图4

[5]确认本地的php.ini文件位置,一般是在/etc目录下,如果PHP的配置文件在别处的话,请根据实际情况设置。

在vps安装zend-optimizer图5

在vps安装zend-optimizer图5

[6]检查php版本

在vps安装zend-optimizer图6

在vps安装zend-optimizer图6

[7]提示修改一些配置信息,原/etc/php.ini重命名为/etc/php.ini-zend_optimizer.bak,新的/etc/php.ini指向/etc/local/Zend/etc/php.ini

在vps安装zend-optimizer图7

在vps安装zend-optimizer图7

[8]被询问是否使用Apache服务器,这里选择Yes。

在vps安装zend-optimizer图8

在vps安装zend-optimizer图8

[9] 设置Apache的路径,这里保持默认,选择OK进入下一步。

在vps安装zend-optimizer图9

在vps安装zend-optimizer图9

[10]然后开始安装…稍等片刻,安装完成后,提示安装成功,选择OK进入下一步。

在vps安装zend-optimizer图10

在vps安装zend-optimizer图10

[11]选择Yes,重新启动HTTP服务

在vps安装zend-optimizer图11

在vps安装zend-optimizer图11

[12]服务器正在重启

在vps安装zend-optimizer图12

在vps安装zend-optimizer图12

[13]apache服务重启成功,zend optimizer安装成功。

在vps安装zend-optimizer图13

在vps安装zend-optimizer图13

在vps主机安装vsFTPd文件服务器

概述:在互联网的传输协议中,FTP(File Transfer Protocol)可以说是最古老的协议之一了,一般来说数据以FTP协议来传输时相当快的,不过值得注意的是,使用FTP传输时具有一定程序的“危险性”因为数据在因特网上完全没有受到保护的“明码”传输,所以我们建议客户最好不开放ftp服务,但可能有些客户需要给朋友分配虚拟主机(例如给朋友一个blog空间),本文详细描述如何在vps主机安装配置vsFTPd文件(FTP)服务器

环境:centos vps

目的:在vps主机安装配置vsFTPd FTP服务器,同时建立一个帐号vsftptest用户,是用户可以通过此帐号更新自己的网页

步骤:

1)安装vsFTPd服务器软件

[root@www ~]# yum -y install vsftpd

2)增加ftp帐号

[root@www vsftpd]# adduser vsftptest
[root@www vsftpd]# passwd vsftptest

3)处理vsftp.conf配置文件

[root@www ~]# vi /etc/vsftpd/vsftpd.conf
# anonymous_enable=YES <--注销匿名用户登录
#增加是否针对某些用户来chroot的相关设置
chroot_local_user=YES &lt; --设置用户默认chroot
chroot_list_enable=YES
chroot_list_file=/etc/vsftpd/chroot_list

新建chroot_list
[root@www ~]#touch /etc/vsftpd/chroot_list

4)启动vsftp服务

[root@www ~]# /etc/init.d/vsftpd start
[root@www ~]# chkconfig --level 345 vsftpd on

5)测试,使用客户ftp连接服务器

在vps主机上使用磁盘配额限制vsFTPd用户的空间大小

概述:在上一篇在vps主机安装vsFTPd文件服务器 构建ftp帐号后,但是vsFTPd不支持磁盘配额,这样就很不方便给朋友分配网页空间,那么可以使用linux系统自动的磁盘配额功能,给特定的帐号分配磁盘使用大小。

环境:centos5 特惠型vps

目的:给帐号vsftptest进行磁盘配额设置,此用户共有50M磁盘空间(不考虑inode),并且最低限制为45MB,宽限时间设置为1天

步骤:

1)使用eduota编辑用户可用的空间

[root@www ~]# edquota -u vsftptest
Disk quotas for user vsftptest (uid 500):
Filesystem blocks soft hard inodes soft hard
/dev/simfs 20 45000 50000 5 0 0

2)设置宽限时间

[root@www ~]# edquota -t
Grace period before enforcing soft limits for users:
Time units may be: days, hours, minutes, or seconds
Filesystem Block grace period Inode grace period
/dev/simfs 1days 0seconds

3)输出quota报告

[root@www ~]# repquota -avug
*** Report for user quotas on device /dev/simfs
Block grace time: 24:00; Inode grace time: 00:00
Block limits File limits
User used soft hard grace used soft hard grace
----------------------------------------------------------------------
root -- 469864 0 0 23474 0 0
smmsp -- 8 0 0 2 0 0
apache -- 40 0 0 4 0 0
rpm -- 10592 0 0 75 0 0
named -- 24 0 0 6 0 0
mysql -- 22396 0 0 93 0 0
vsftptest -- 20 45000 50000 5 0 0

Statistics:
Total blocks: 131592
Data blocks: 5
Entries: 7
Used average: 1.400000

*** Report for group quotas on device /dev/simfs
Block grace time: 00:00; Inode grace time: 00:00
Block limits File limits
Group used soft hard grace used soft hard grace
----------------------------------------------------------------------
root -- 468012 0 0 22881 0 0
tty -- 20 0 0 514 0 0
disk -- 0 0 0 1 0 0
kmem -- 0 0 0 3 0 0
mail -- 196 0 0 5 0 0
man -- 128 0 0 32 0 0
lock -- 4 0 0 1 0 0
nobody -- 84 0 0 1 0 0
utmp -- 144 0 0 4 0 0
smmsp -- 816 0 0 5 0 0
apache -- 56 0 0 6 0 0
screen -- 344 0 0 2 0 0
slocate -- 28 0 0 2 0 0
utempter -- 4 0 0 1 0 0
rpm -- 10592 0 0 75 0 0
named -- 100 0 0 28 0 0
mysql -- 22396 0 0 93 0 0
vsftptest -- 20 0 0 5 0 0

Statistics:
Total blocks: 131592
Data blocks: 7
Entries: 18
Used average: 2.571429

[root@www ~]#

在vps主机启动用户的个人网站

概述:每台vps主机都有一个首页,但是如果我们想给其他的用户也拥有可以完全控管的首页时,那该如何设计呢,Apache早 就帮我们想好了,不过在配置文件内默认将这个功能取消,本来将详细介绍如何启动用户个人网站

环境:centos 5vps特惠型主机

目的:构建一用户名为vsftptest,可以通过http://你的主机名称/~vsftptest/访问,使用ftp工具更新内容,同时限制用户不能通过ssh登录主机,已经可用磁盘空间为50M。

步骤:

1)新建用户名vsftptest

[root@www ~]# mkdir /etc/skel/public_html
[root@www ~]# useradd vsftptest
[root@www ~]# pwsswd vsftptest

2)编辑httpd配置文件

[root@www ~]#vi /etc/httpd/conf/httpd.conf
#找到如下的设置项目,大约在340行左右

UserDir disable
#UserDir public_html

#将它改成如下的情况

#UserDir disable
UserDir public_html

重启httpd服务

[root@www ~]# apachectl restart

上面的UserDir public_html的含义是指定个人首页默认在默认目录的public_html目录中,假如用户为vsftptest,那么vsftptest默认目录为 /home/vsftptest,那么它的个人首页目录为:/home/vsftptest/public_html。当然也可以修改这个目录的名称,只要修改上述代码中的UserDir内容即可。

3)设置用户家目录权限

使用vsftptest登录系统

[root@www ~]# su - vsftptest
[vsftptest@www ~]$ chmod 755 ~
[vsftptest@www ~]$ chmod 755 public_html
[vsftptest@www ~]$ echo "test you home">public_html/index.html

由于CentOS默认用户的默认目录权限是“drwx——”,这个权限无法让apache的程序浏览。所以至少要让你的默认目录与public_html目录权限成为“drwxr-xr-x”才行,这个很重要。

4)测试,在游览器地址栏输入:“http://您的主机名称/~vsftptest/”就可以看到你的主页了

如果您想是否可以使用“http://您的主机名称/vsftptest/”访问我的个人网站呢,最简单的方法如下:

第一种方法:

[root@www ~]# cd /var/www/html/
[root@www html]# ln -s /home/vsftptest/public_html vsftptest

使用此方法,记得首页的Options内有 FollowSymLinks参数,要不不可以直接使用连接文件

第二种方法:

[root@www ~]# vi /etc/httpd/conf/httpd.conf

#找个不与别的设置值有干扰的地方加入这个设置项目,一般可以在文件末尾添加如下内容

Alias /vsftptest/ "/home/vsftptest/public_html/"

Options FollowSymLinks
AllowOverride None
Order allow,deny
Allow from all

保存设置后,重新启动apache服务

[root@www ~]#apachectl restart

上面两种方法任选择一种,不要两种方法都配置
5)配置帐号使用ftp登录更新网页
具体配置请查看:在vps主机安装vsFTPd文件服务器
6)限制帐号空间大小
关于如何限制ftp空间的大小,具体配置请查看:在vps主机上使用磁盘配额限制vsFTPd用户的空间大小
7)禁止vsftptest帐号使用ssh登录系统

[root@www ~]# cp /etc/ssh/sshd_config /etc/ssh/sshd_config.bak
[root@www ~]# vi /etc/ssh/sshd_config
#在此文件末尾添加
AllowUsers root
#若要设定多人可以通过ssh登录,就用空格隔开:AllowUsers root testroot

在vps主机启动某个目录的CGI程序执行权限

概述:如果想让apache执行perl之类的网页程序,就需要安装一些额外的模块。建议最好安装一下mod_perl与mod_python这两个软件。默认如果想执行CGI程序,就必须把程序放在/var/www/cgi-bin/目录下,如果想要在其他目录下也能执行CGI,就需要另外设置了。

环境:centos5 vps特惠型

目的:

1、使/var/www/html/cgi目录可以执行CGI程序

2、使虚拟主机目录也支持 cgi程序运行

步骤:

第一种目的第一种方法:(使用Options参数设置)

1)配置http.conf配置文件

[root@www ~]# vi /etc/httpd/conf/httpd.conf
#找到下面这一行,
#AddHandler cgi-script .cgi
#将它改为如下模样,让扩展名为.pl 的文件也能执行
AddHandler cgi-script .cgi .pl
#把如下这一行,添加index.cgi首页,改为如下模样
DirectoryIndex index.html index.cgi index.html.var
#然后加入如下这几行来决定开放某个目录的CGI执行权限
&lt;Directory "/var/www/html/cgi/"&gt;
Options ExecCGI
AllowOverride None
Order allow,deny
Allow from all
&lt;/Directory&gt;
#重启apache
[root@www ~]# apachectl restart

2)新建测试页面

[root@www ~]#vi /var/www/html/cgi/index.cgi
#!/usr/bin/perl
print "Content-Type: text/html\n\n";
print "<html><body>";
print "Hello,World!CGI is working!<br>";
print "</body></html>";

接下来只要让CGI程序具有x权限,那么就可以执行了,把刚才新建的测试页面添加执行权限

[root@www ~]# chmod a+x /var/www/html/cgi/index.cgi

打开游览器,输入http://您的主机名称/cgi/就可以访问了

第一种目的第二种方法(使用ScriptAlias功能)
可以直接利用文件名的别名来处理

[root@www ~]# vi /etc/httpd/conf/httpd.conf
#同样找到下面这一行,
#AddHandler cgi-script .cgi
#将它改为如下模样,让扩展名为.pl 的文件也能执行
AddHandler cgi-script .cgi .pl
#把如下这一行,添加index.cgi首页,改为如下模样
DirectoryIndex index.html index.cgi index.html.var
#在文件末尾增加此行
ScriptAlias /cgi/ "/var/www/html/cgi/"
然后重启apache
[root@www ~]# apachectl restart

这种方法非常简洁,因为该目录不需要在apache首页目录下也成功。
上述两种方法可以随意选取一个进行处理,不需要两个都进行
让虚拟主机也支持CGI

[root@www ~]# vi /etc/httpd/conf/httpd.conf
#在此文件末增加下面语句
&lt;Directory "/home/*/public_html/cgi/"&gt;
Options ExecCGI
AllowOverride None
Order allow,deny
Allow from all
&lt;/Directory&gt;
[root@www ~]# vi /etc/httpd/conf.d/VirtualHost.conf
#在此文件增加如下几行,如没有此文件,请新建
&lt;VirtualHost *:80&gt;
ServerAdmin vsftptest@15099.net
DocumentRoot /home/vsftptest/public_html/
ServerName vsftptest.15099.net
&lt;/VirtualHost&gt;

然后重启apache
[root@www ~]# apachectl restart

关于如何构建虚拟主机,请访问在vps主机虚拟主机设置

请参考第一种目的第一种方法的第2步,/home/vsftptest/public_html/cgi建立测试页面。

这样就你可以使用游览器访问http://vsftptest.15099.net/cgi/里的cgi文件了

VPS主机与独立主机和虚拟主机的区别

虚拟主机的优点和缺点

虚拟主机服务是在同一台服务器上,通过一系列的软件组合为用户提供空间服务,利用账户密码权限对用户进行隔离和实施资源限制(如磁盘配额)。

虚拟主机可满足客户最基本的托管需求,可以托管简单的静态/动态网站。虚拟主机为互联网的广泛普及做出了巨大贡献,可以说如果没有虚拟主机的出现,就没有互联网今天的繁荣。

虚拟主机普及度非常高,几乎为绝大多数网民所熟悉,概念容易理解,因为虚拟主机价格相对便宜,对用户技术要求不高,只要懂得简单的网络技术就可以轻松上手。这成为虚拟主机为用户所广泛接受的主要原因。

但由于虚拟主机采用的隔离、资源保障机制比较简单,一旦某个用户过多地使用了系统资源,其他用户势必会受到严重影响;当某个用户网站受到攻击,则会感染同服务器所有网站。而且由于主机服务商要确保环境统一管理,不允许虚拟主机用户安装很多个性化应用,因而对用户的限制比较多。

独立主机及其优缺点

独立主机是作为虚拟主机的高端产品出现的,它是一台独立的包含操作系统环境、拥有独立IP并联网的服务器。它为互联网高端用户提供了更为宽松的使用环境,满足企业级用户各种不同的需求。

与虚拟主机相比,独立主机限制较少,用户可以自己完成各种所需的环境配置和个性化应用的安装。因为都是独享,所以不存在资源受影响的情况,安全、可靠。

但是,用户成本与其所享受的高端服务是成正比的,独立主机的价格(托管费用)相比虚拟主机要高得多。除此以外,独立主机对用户的技术要求也很高,企业需要配备专门的技术人员来维护和管理独立主机,因此,独立主机的普及程度要远远落后于虚拟主机,多数中小企业难以接受其较高的价格以及维护和管理所带来的高成本。

VPS主机的优势

通过前面的对比可以看出,虚拟主机对用户限制太多,且安全性差,独立主机价格非常昂贵,那么,有没有一种虚拟主机和独立主机的综合体,它可以继承虚拟主机和独立主机的所有优点,但却没有虚拟主机和独立主机的缺点?答案是肯定的,它就是VPS(Virtual Private Server 虚拟专用服务器)。

VPS主机继承了虚拟主机和独立主机所有优点,价格却与虚拟主机相当,用户使用VPS,不仅可以享受到与独立主机相同的高品质服务,还可尽享虚拟化技术带来的先进管理体验。

VPS主机的主要优势有

低成本 高品质

VPS主机的出现有效填补了虚拟主机和独立主机的空缺,高密度的模式允许VPS以接近虚拟主机的价格为用户提供与独立主机相当的高品质服务,受到了主机用户的高度青睐。

操作简便 易用性强

VPS提供了直观的管理控制面板,用户只需具备计算机基础操作技能,通过简单的培训即可以完成服务器管理和日常维护工作,操作非常简便,易用性强。

用户资源有保障

每个VPS主机都拥有自己独立的资源配置,如CPU、内存、硬盘、独立的IP地址等,给用户最基本的资源保障,确保每一个用户都能公平地获得自己所需要的资源。

VPS允许配置资源使用下限和上限,资源下限给用户以最基本的资源保障,资源上限在一定程度上限制了用户对系统资源过多占用,为用户创建更加公平合理的资源使用环境。

独立的公网IP

每个VPS拥有一个独立的公网IP,这意味着VPS作为独立的互联网节点,可以从世界各地进行连接。不管您出差在外、度假、旅游,只要您能上网,就可以通过VPS提供的基于浏览器的控制面板轻松完成日常服务器的管理工作,而无需像使用独立主机一样,因为需要服务器重启,要打长途电话到机房找值班技术人员,请他们手工完成重启工作。VPS基于浏览器的控制面板既为您节省了时间,也节约了不必要的通话成本。

VPS独立的公网IP还能为用户带来更好的隔离效果。如果您曾经使用虚拟主机,您就可能有过因其它虚拟主机网站放置不合适的内容(如**功、黄色内容等)而服务器IP被封的经历。VPS有了独立的公网IP,即使同台服务器内的VPS用户可能出现这样的问题,封IP也只是单个VPS的IP,不会对您的VPS产生任何影响。

安全隔离 确保私密空间

如前所述,每个VPS都是一个独立的环境,用户之间完全隔离,是真正安全的隔离,能够确保用户资源的私密性。

在物理服务器上,每个VPS数据都是以加密文件包的方式进行存储的,物理服务器管理员根本看不到VPS数据内容,绝对不会出现网站重要信息泄漏等情况,真正为您创建了一个安全隔离的互联网空间。

自主控制资源 满足个性化需求

VPS允许用户享有和物理服务器管理员一样的管理权限,用户可以自由的安装定制化应用。这一点对用户非常重要,因为用户经常会有特殊的应用需求。

这种需求在虚拟主机里很常见,经常有用户要求安装特殊的ASP/PHP插件,因为其网站必须要使用这种插件才能正常工作。但是出于安全性等多种因素的考虑,虚拟主机服务商一般不允许用户进行这样的操作,所以就会限制或放弃这样的用户,以保障其安全稳定的服务环境。

而使用VPS,用户可以自主安装这样的插件,且绝对不会影响同一台服务器的其他VPS用户,因为每个VPS都拥有自己的独立的进程、注册表及其它硬件和软件资源,各VPS用户完全隔离,完全不会出现相互影响的情况,充分满足用户的个性化需求。

可以提供现成的应用环境

VPS采用先进的模板技术,瞬间就可以为用户部署VPS主机。VPS的模板分为操作系统模板和应用程序模板,操作系统模板方便管理员批量部署VPS操作系统环境,应用程序模板则方便管理员为VPS批量部署应用服务。

如果将操作系统模板和应用程序模板结合起来,就可以瞬间为用户直接部署现成的应用环境。例如,如果我们同时拥有了Windows OS 模板和SQL Server模板,就可以直接用来部署安装了SQL Server应用的VPS,用户在VPS开通后就可以直接使用SQL Server数据库服务。

相对于独立主机对服务器环境配置技术要求很高的工作,VPS可以通过一次性配置并制作完成模板,利用这个模板,以后服务商提供的每个VPS环境,都是已经现成的应用环境,这样就极大节约了用户配置管理和维护成本,让用户轻松使用互联网空间服务。

总之,VPS主机(VPS服务器)是虚拟主机和独立主机的有益补充,是虚拟主机更高级的阶段,它同时继承了虚拟主机和独立主机的所有优势,更符合目前市场的需求。

在vps主机使用yum配置jsp环境(tomcat5)

概述: 所谓 Java Servlet ,是指用 Java 语言,实现动态网页的创建的功能,一般把简单的把它称为“Servlet”(无中文译文)的情况比较常见。和它处于同等类别的技术还有我们知道的Perl、PHP、ASP等等。Servlet算是J2EE中的一部分,所以在企业应用方面,Servlet技术被广泛的应用着。而所谓的JSP是Servlet技术的延伸,Servlet程序就是通过JSP来自动生成的。通常Servlet和JSP被混为一谈的情况比较多见,但严格上说,Servlet和JSP是两种不同的技术…但也正因为它们通常作为“搭档”,JSP也被认作是Servlet的一种功能。

环境:centos vps主机 实用型(特惠型需要在刚安装系统就直接通过yum安装,要不可能会空间不足)

目的:在vps主机上使用yum快速配置jsp环境

步骤:

1)安装相应的组件:

[root@www ~]# yum -y install tomcat5 tomcat5-webapps tomcat5-admin-webapps

2)整合apache

例如tomcat安装在 /etc/tomcat5
tomcat与apache整合使用 mod_proxy_ajp
设定档参考 /etc/httpd/conf.d/proxy_ajp.conf
vi /etc/httpd/conf.d/proxy_ajp.conf

ProxyPass /tomcat/ ajp://domainname.com:8009/
ProxyPass /examples/ ajp://domainname.com:8009/jsp-examples/

将前面的#拿掉..并将 locahost 改成对外的Domain…这样就可以了…
接著测试看看 http://domainname.com/tomcat

如果要设定成虚拟主机的方式…则将 ProxyPass 那一行的设定移过去虚拟主机的设定档上就可以…真的相当方便…

如何备份vps主机上的mysql数据库

概述:一个成功的网站,数据备份是不可少的,那么如何备份已经运行的数据库呢,下面是用phpmyadmin和mysql服务器自带的mysqldump进行讲解。

环境:centos特惠型 (同时适合我司所有vps主机)假设要备份的数据库是http://ecshop.15099.net网站的数据,相关信息如下:

数据库:ecshop

用户名:ecshop

密码:ecshop

网站存放目录:/data0/htdocs/ecshop目录下

目的:1、使用phpmyadmin手动备份ecshop数据库,2、使用mysqldump定时自动备份数据库

步骤:

一、使用phpmyadmin备份数据库,关于phpmyadmin安装配置请查看:使用phpmyadmin管理mysql数据库

1、登录:使用上面帐号信息登录:

phpmyadmin登录窗口

phpmyadmin登录窗口

2、点击执行进入phpmyadmin控制界面如下:

phpmyadmin控制界面图,双击图片可放大

phpmyadmin控制界面图,双击图片可放大

3)点击左边的数据库列表中的ecshop,打开如下页面

phpmyadmin-ecshop数据库截图

phpmyadmin-ecshop数据库截图

4)单击上图最上面的【导出】选项,打开导出页面,如下图

phpmyadmin导出截面

phpmyadmin导出截面

5、用鼠标拉动右边的下拉条,看到如下截图:

phpmyadmin备份功能截图

phpmyadmin备份功能截图

在文件名模板输入你预备份的文件名,我这里填写ecshop081214(养成按日期备份文件的习惯),压缩选择gzip压缩,然后点击右边的执行按钮,稍等几秒钟,(时间根据数据库的大小不同而不同),然后就会弹出如下对话框

phpmyadmin备份数据库

phpmyadmin备份数据库

然后按【确定】,就把数据库保存到本地了

6、经过上面几个步骤,就把ecshop这个mysql数据库给备份下来了,不过有一个小小的缺点,就是必须使用手动来操作,下面我们使用mysql自带的备份工具来定时备份数据

二、使用mysqldump定时自动备份数据库
1、使用ssh客户端登录vps主机,如果不会请查看这篇文章:如何使用putty远程登录vps主机

2、编辑备份脚本backup-db.sh

[root@www htdocs]# vi backup-db.sh
#!/bin/sh
/bin/nice -n 19 /usr/bin/mysqldump -u ecshop --password=ecshop ecshop -c | /bin/nice -n 19 /bin/gzip -9 &gt; /data0/htdocs/ecshop/db-backup/ecshop-$(date '+%Y%m%d').sql.gz
rm -rf /data0/htdocs/ecshop/db-backup/ecshop-$(date +%Y%m%d -d "7 days ago").sql.gz
#上面语句删除7天前的备份

上述脚本中-u后接数据库用户名, –password后接数据库密码,紧接着是数据库名。
3)配置定时备份

[root@www ~]# crontab -e
59 23 * * * /data0/htdocs/db-backup/backup-db.sh

每天的23:59分自动备份数据库,且生成的数据库压缩按日期命名

在vps主机安装shopex商城程序

概述:shopex商城程序是国内最早的网店程序之一,市场占用率非常高,国内很多网店是使用此程序架设或进行二次开发的,而且模板众多,唯一一点不足就是为开发源代码,所以需要安装Zend Optimizer软件。官方网站:http://www.shopex.com.cn/

环境: centos 实用型vps主机 (考虑商城产品多的话,可以占用的空间超过1G,所以我未选择特惠型VPS主机

商城web程序跟目录:/data0/htdocs/shopex

数据库:shopex

数据库用户:shopex

数据库密码:shopex

关于数据库帐号可通过phpmyadmin图形界面新建,这里就不详细讲了。

目的:安装shopex测试数据,可以通过http://shopex.15099.net访问

步骤:

1、下载压缩包且解压:

[root@www ~]# cd /data0/software/
[root@www software]# wget http://dltel.shopex.cn/single/shopex_singlev472.zip
[root@www software]# unzip shopex_singlev472.zip -d shopex
[root@www software]# mv shopex/* /data0/htdocs/shopex/

2、用游览器打开http://shopex.15099.net/install进入安装程序如下图所示:

vps安装shopex图1

vps安装shopex图1

点击【接受】按钮,需接受协议,进入下一步安装说明,如下图:

vps安装shopex图2

vps安装shopex图2

点击下一步,进入系统检测页面:

vps安装shopex图3

vps安装shopex图3

点击下一步,进入准备安装页面:

vps安装shopex图4

vps安装shopex图4

输入准备好的数据库资料,这里数据库主机按默认localhost,数据库名:shopex,数据库用户名:shopex,密码:shopex,安装数据库前缀:sdb_,后台语言:简体中文 Simplified Chinese, 然后按下一步正式安装:

vps安装shopex图5

vps安装shopex图5

接着按下一步,看到如下画面:

vps安装shopex图6

vps安装shopex图6

在这里输入管理员帐号和密码等信息,单击下一步按钮

vps安装shopex图7

vps安装shopex图7

看到上面画面,单击完成,整个系统就安装成功了。

这样你就可以通过http://shopex.15099.net/ 访问商城了,通过http://shopex.15099.net/shopadmin访问后台管理界面。

在vps主机安装discuz7.0.0ful论坛程序

概述:discuz是国内论坛使用人数最多的一款程序,最新的版本为:7.0.0,为方便各位站长在vps主机顺利安装程序,现特写下操作步骤,请供参考

discuz官方网站:http://comsenz.com

环境:vps centos 5 特惠型

假设数据安装在/data0/htdocs/discuz目录下,可以通过http://discuz.15099.net访问,安装论坛数据库相关信息如下:

数据库:discuz

数据库用户名:discuz

数据库密码:discuz

步骤:

1、下载程序及解压

假设下载文件存放在/data0/htdocs/software下,按如下操作

[root@www ~]# cd /data0/software/
[root@www software]#wget http://download.comsenz.com/Discuz/7.0.0/Discuz_7.0.0_FULL_SC_UTF8.zip
[root@www software]# unzip Discuz_7.0.0_FULL_SC_UTF8.zip
[root@www software]# mv upload/* /data0/htdocs/discuz/

2、通过游览器在线安装

在游览器地址栏输入:http://discuz.15099.net/install,将弹出安装画面,开始进行discuz论坛的安装向导,画面如下图:

在vps主机安装discuz图1

在vps主机安装discuz图1

单击我同意按钮,同意授权协议,进入下一步检测运行环境,如果页面权限未设置好,请根据提示修改

在vps主机安装discuz图2

在vps主机安装discuz图2

然后单击检测通过,跳转到下一步

在vps主机安装discuz图3

在vps主机安装discuz图3

按数据库相关资料正确填写及管理员信息,然后按【填写完毕,进行下一步】

在vps主机安装discuz图4

在vps主机安装discuz图4

看到上面截面,就基本安装完成了,点击【您现在可以点击这里进入论坛】就直接访问你论坛首页,这里是直接访问到http://discuz.15099.net,使用刚才你设置管理员帐号和密码登录,在右上角有个系统设置,点击就可以进行论坛相关设置。

在vps主机安装ecshop商城程序

概述:ecshop是国内一款用户率占用非常高的商城程序,功能强大,使用和设置都非常方便,特别是他把源码开放,这样大家比较方便使用其进行二次开发,本来详细讲解一下如下在vps主机下安装ecshop

环境:centos vps特惠型 网站数据存放:/data0/htdocs/ecshop目录下,数据库相关信息:

数据库名:ecshop

数据库用户:ecshop

数据库密码:ecshop

步骤:

1、下载安装程序及解压

[root@www ~]# cd /data0/software/
[root@www software]# unzip ECShop_V2.6.1_UTF8_build1208.zip
[root@www software]# wget http://download.ecshop.com/2.6.1/ECShop_V2.6.1_UTF8_build1208.zip
[root@www software]# mv upload/* /data0/htdocs/ecshop/

2、打开游览器,在地址栏输入http://ecshop.15099.net/进入安装页面,如下图所示:

在vps主机安装ecshop商城图1

在vps主机安装ecshop商城图1

勾选‘我已仔细阅读,并同意上述条款中的所有内容’然后按【下一步:配置安装环境按钮】。出现如下图
在vps主机安装ecshop商城图2

在vps主机安装ecshop商城图2

如果上面截图出现有些文件不可写,请使用chmod命令修改文件权限
然后单击【下一步:配置系统】按钮
在vps主机安装ecshop商城图3

在vps主机安装ecshop商城图3

输入正确给ecshop商城分配的数据库信息已经管理员帐号信息,同时选择语言包,是否安装测试数据等信息
然后按【立即安装】按钮,进行商城数据库的安装,稍等几秒钟,出现下面画面
在vps主机安装ecshop商城图4

在vps主机安装ecshop商城图4

看到上述画面代表程序已经安装完毕,在登录系统把install删除
通过上述步骤,就把ecshop商城程序安装到vps主机了,你可以通过http://ecshop.15099.net 访问网站了。

如何恢复vps主机mysql数据库

概述:一个成功的网站,数据备份是不可少的,那在vps主机由于其他原因不能正常启动(例如:不正当的修改设置文件,系统帐号别人知道登录修改)所以我们需要了解如何在系统损害时,如何恢复已经按上一篇如何备份vps主机上的mysql数据库备份的数据呢,下面我接着此篇文章讲解如何恢复数据库

环境:centos vps主机特惠型 其他与如何备份vps主机上的mysql数据库的环境相同

步骤:

方法一:使用phpmyadmin图形界面恢复


1、首先下载已经备份好的数据库压缩包到本地电脑,下载方式就不讲了,可以使用filezilla,WinSCP 等客户端登录下载

2、使用游览器输入phpmyadmin登录地址,登录phpmyadmin管理数据库,登录后选择对应的数据库,这里假设为:ecshop,打开如下截面:


恢复vps主机mysql数据库图1

点击【Import】选项,打开导入画面,如下图



恢复vps主机mysql数据库图2

在文本文件的位置,单击游览,找到刚才下载到本地的数据库备份文件,然后单击右下角的【执行】按钮,这样你的mysql数据库就恢复了。

方法二:使用命令行mysql恢复

gunzip < /data0/htdocs/ecshop/db-backup/ecshop-$(date '+%Y%m%d').sql.gz | /usr/local/webserver/mysql/bin/mysql -uecshop -pecshop ecshop
上述命令就把在如何备份vps主机上的mysql数据库备份且压缩的数据库恢复到系统了。

在vps主机配置awstats日志数据分析软件

概述:除了使用webalizer分析web日志外,还可以通过awstats的perl程序来进行数据分析,由于这个软件是以perl来执行,所以请确定mod_perl(rpm -q mod_perl命令来查看)已经安装切CGI的执行权限已经启动(使用yum -y install mod_perl安装)。可以查看在vps主机启动某个目录的CGI执行权限。
官方网站:http://awstats.sourceforge.net/ 授权模式:GPL

环境:centos vps 特惠型

目的:把http://vps.15099.net主机的web访问日志使用awstats统计出来,可以使用http://vps.15099.net/awstats/index.html访问

步骤:

1)使用yum命令安装

[root@www ~]#rpm -Uhv http://apt.sw.be/redhat/el5/en/i386/rpmforge/RPMS/rpmforge-release-0.3.6-1.el5.rf.i386.rpm
[root@www ~]# yum -y install awstats


2)编辑awstats.conf配置文件

[root@www ~]# vim /etc/httpd/conf.d/awstats.conf
Alias /awstats/icon/ /var/www/awstats/icon/

ScriptAlias /awstats/ /var/www/awstats/
把上面ScriptAlias 改为Alias

DirectoryIndex awstats.pl
Options ExecCGI
order deny,allow
deny from all
allow from 127.0.0.1
allow from 67.159.48.199 #增加此行,运行可以通过本机ip访问

#Alias /css/ /var/www/awstats/css/
#Alias /js/ /var/www/awstats/js/
3)重启httpd服务

[root@www ~]# apachectl restart
4)配置www日志文件

[root@www ~]# cd /etc/awstats/
[root@www awstats]# cp awstats.model.conf awstats.vps.conf
[root@www awstats]# vi awstats.vps.conf
#确保下面这几行,并且修改一下内容如下,其他值为按默认值
LogFile="/var/log/httpd/vps.15099.net-access_log"
LogType=W
SiteDomain="vps.15099.net"
DirCgi="/awstats"5)开始测试一下,看是否可以产生正确的分析资料

[root@www ~]# cd /var/www/awstats/
[root@www awstats]# perl awstats.pl -config=vps -update -output >index.html
[root@www awstats]# ll index.html
-rw-r--r-- 1 root root 67213 Nov 30 17:45 index.html
[root@www awstats]#
6)打开游览器地址栏输入:http://vps.15099.net/awstats/index.html可以访问,将看到如下画面


在vps主机安装awstats统计图表

7)一般的访问日志都不希望未经过授权的人访问,我们可以把此目录通过“.htaccess”保护此目录,关于如何建立保护目录,请查看在vps主机建立受保护的网页目录这里我就不详细讲解了。

经过上面7步,我们就在我们的vps主机上配置我awstats日志统计软件

使用 awstats 分析 Nginx 的访问日志

概述:众所周知,Awstats 是在 SourceForge 上发展很快的一个基于 Perl 的 WEB 日志分析工具,一个充分的日志分析让 Awstats 显示您下列资料:

访问次数、独特访客人数,
访问时间和上次访问,
使用者认证、最近认证的访问,
每周的高峰时间(页数,点击率,每小时和一周的千字节),
域名/国家的主机访客(页数,点击率,字节,269域名/国家检测, geoip 检测),
主机名单,最近访问和未解析的 IP 地址名单
大多数看过的进出页面,
档案类型,
网站压缩统计表(mod_gzip 或者 mod_deflate),
使用的操作系统 (每个操作系统的页数,点击率 ,字节, 35 OS detected),
使用的浏览器,
机器人访问(检测 319 个机器人),
蠕虫攻击 (5 个蠕虫家族),
搜索引擎,利用关键词检索找到你的地址,
HTTP 协议错误(最近查阅没有找到的页面),
其他基于 URL 的个性报导,链接参数, 涉及综合行销领域目的.
贵网站被加入”最喜爱的书签”.次数.
屏幕大小(需要在索引页补充一些 HTML 标签).
浏览器的支持比例: Java, Flash, RealG2 reader, Quicktime reader, WMA reader, PDF reader.
负载平衡服务器比率集群报告.
Awstats 的运行是需要 PERL 环境的支持,从 awstats 的文档来看,它对 Apache HTTP Server 的支持是非常完美的,而当我们把 Web 服务器换成 Nginx 后,要运行 awstats 变得很麻烦。首先 Nginx 本身对 Perl 的支持是比较弱的,甚至官方也不建议使用;另外在日志格式上有需要修改后才能运行。

本文主要介绍通过让 awstats 对日志统计的结果生成静态页面,然后通过 Nginx 输出以达到统计 Nginx 访问日志的效果,其中还包括如何让 Nginx 自动切割日志文件。

在上一篇文章:《在vps主机配置nginx+php(fastcgi)+mysql环境》介绍了 Nginx 这个 HTTP 服务器以及如何通过它来加速网站的访问速度。在实际的网站运营中,我们经常需要了解到网站的访问情况,例如每天有多少 IP 在访问、PV 数是多少、哪个 URL 访问量最大、用户使用最多的浏览器是哪个、都是通过什么方式知道这个网站的以及有多少用户访问出错等等,通过掌握这些信息来提高用户的体验,从而改善网站 的质量。一般我们可以通过一些免费的访问统计网站例如 Google Analytics 来或者这些信息。但不足之处是这类网站只能对页面进行分析,不包括静态文件;另外可能有很多的站长不愿意使用这类工具来暴露自己的数据,种种的这些因素使 站长希望自己来分析访问日志。而 awstats 就可以满足所有的这些需求。

目的:本文就来详细讲一下如何在vps主机已经配合nginx的环境下,使用awstats来统计我们的访问日志

环境:vps主机特惠型 centos操作系统

nginx安装目录:/usr/local/webserver/nginx

网页存放目录:/data0/htdocs/vps

日志存放路径:/data1/logs

perl版本:5.8

统计网站名称:vps.15099.net

awstats版本:6.8 官方地址:http://awstats.sourceforge.net/ tar.gz压缩包下载地址

步骤:

1、配置nginx自动分割日志


跟 Apache HTTP Server(以下称 Apache)不同的是,Apache 可以将日志输出通过管道的方式进行重新定向,依此来进行自动的日志切割。Nginx 在现今版本上还没能跟 Apache 一样,通过%YY等参数按日期分批创建日志,但是通过给 nginx 进程发送一个特定的信号,可以使 nginx 重新生成日志文件。我们可以定期执行一个 Shell 脚本来切换日志,重新命名或转移,具体的脚本如下:

[root@basic ~]#vi /usr/local/webserver/nginx/sbin/logcron.sh
mv /data1/logs/access.log /data1/logs/access_`date +%Y%m%d`.log
kill -USR1 `cat /usr/local/webserver/nginx/nginx.pid`
#使用USR1参数通知Nginx进程切换日志文件
修改logron.sh执行权限

#chmod +x /usr/local/webserver/nginx/sbin/logcron.sh
2、安装和配置awstats

[root@basic conf]# cd /usr/local/

[root@basic local]# mkdir awstats

[root@basic awstats]# wget http://prdownloads.sourceforge.net/awstats/awstats-6.8.tar.gz

[root@basic awstats]# tar zxvf awstats-6.8.tar.gz

[root@basic awstats]# mv awstats-6.8/* ./

[root@basic awstats]# rm -rf awstats-6.8.tar.gz

[root@basic awstats]# cd tools/[root@basic tools]# ./awstats_configure.pl

----- AWStats awstats_configure 1.0 (build 1.8) (c) Laurent Destailleur -----
This tool will help you to configure AWStats to analyze statistics for
one web server. You can try to use it to let it do all that is possible
in AWStats setup, however following the step by step manual setup
documentation (docs/index.html) is often a better idea. Above all if:
- You are not an administrator user,
- You want to analyze downloaded log files without web server,
- You want to analyze mail or ftp log files instead of web log files,
- You need to analyze load balanced servers log files,
- You want to 'understand' all possible ways to use AWStats...
Read the AWStats documentation (docs/index.html).

-----> Running OS detected: Linux, BSD or Unix

-----> Check for web server install

Enter full config file path of your Web server.
Example: /etc/httpd/httpd.conf
Example: /usr/local/apache2/conf/httpd.conf
Example: c:\Program files\apache group\apache\conf\httpd.conf
Config file path ('none' to skip web server setup):
> none #因为我们这里使用nginx,所以输入none,跳过此步
按回车

Your web server config file(s) could not be found.
You will need to setup your web server manually to declare AWStats
script as a CGI, if you want to build reports dynamically.
See AWStats setup documentation (file docs/index.html)

-----> Update model config file '/usr/local/awstats/wwwroot/cgi-bin/awstats.model.conf'
File awstats.model.conf updated.

-----> Need to create a new config file ?
Do you want me to build a new AWStats config/profile
file (required if first install) [y/N] ? y #创建一个新的统计配置
按回车

----->; Define config file name to create
What is the name of your web site or profile analysis ?
Example: www.mysite.com
Example: demo
Your web site, virtual server or profile name:
>vps.15099.net #统计网站域名,这里填写vps.15099.net为例
按回车

-----> Define config file path
In which directory do you plan to store your config file(s) ?
Default: /etc/awstats
Directory path to store config file(s) (Enter for default):
> #这里提示配置文件存放在那里,我们这里按默认值,存放到/etc/awstats
按回车,接下来便会出现以下的提示

-----> Create config file '/etc/awstats/awstats.vip.15099.net.conf'
Config file /etc/awstats/awstats.vip.15099.net.conf created. #提示配置文件已经创建

-----> Add update process inside a scheduler
Sorry, configure.pl does not support automatic add to cron yet. #提示未成功自动运行脚本到cron
You can do it manually by adding the following command to your cron: #你可以手动把下列脚本添加到cron
/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=vip.15099.net
Or if you have several config files and prefer having only one command: #提示如果有其他的配置文件,
/usr/local/awstats/tools/awstats_updateall.pl now #只需要运行下面命令
Press ENTER to continue...
按回车

A SIMPLE config file has been created: /etc/awstats/awstats.vip.15099.net.conf #新配置文件所在的路径
You should have a look inside to check and change manually main parameters.
You can then manually update your statistics for 'vip.15099.net' with command:
> perl awstats.pl -update -config=vip.15099.net
You can also build static report pages for 'vip.15099.net' with command:
>perl awstats.pl -output=pagetype -config=vip.15099.net

Press ENTER to finish...
按回车,完成向导,接下来修改 vps.15099.net 的统计配置
[root@basic tools]#vi /etc/awstats/awstats.vip.15099.net.conf
找到统计的日志文件的路径

LogFile=”/var/log/httpd/mylog.log”

改为
LogFile=”/data1/logs/access_%YYYY-0%MM-0%DD-0.log”
对应上边 Nginx 日志切割程序的所生成的目录存放结构,要注意 Awstats 的年月日格式的跟 Nginx 的写法有所不同。我们现在执行统计的顺序是:

Nginx 产生日志 –> 日志切割 –> Nginx 继续产生日志 –> 另存切割日志 –> 交由Awstats统计 –> 生成结果

在本文中 Awstats 所统计的日志,是已切下来的那部分。也能调转顺序,先统计完了再切。不过这比较容易造成统计的遗漏。配置修改完成后,保存退出。然后我们可以开始试一下手动执行。

先执行日志切割脚本 logcron.sh 把 Nginx 的日志切下来。
然后执行 Awstats 日志更新程序开始统计分析。
/usr/local/webserver/nginx/sbin/logcron.sh
mkdir /var/lib/awstats/
/usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=vps.15099.net
[root@basic awstats]# /usr/local/awstats/wwwroot/cgi-bin/awstats.pl -update -config=vps.15099.net
Create/Update database for config "/etc/awstats/awstats.conf" by AWStats version 6.8 (build 1.910)
From data in log file "/data1/logs/access_20081218.log"...
Phase 1 : First bypass old records, searching new record...
Searching new records from beginning of log file...
Jumped lines in file: 0
Parsed lines in file: 0
Found 0 dropped records,
Found 0 corrupted records,
Found 0 old records,
Found 0 new qualified records.
看到以上显示,证明日志切割和 Awstats 都已经运行无误了。统计分析完成后,结果还在 Awstats 的数据库中。在 Apache 上,可以直接打开 Perl 程序的网页查看统计。但本文开始时已经提到,Nginx 对 Perl 支持并不好,所以我们要换个方法,利用 awstats 的工具将统计的结果生成静态文件,具体的步骤如下:
* 首先在 webroot 目录下创建一个文件夹。例:/data0/vps/awstats
* 然后让 Awstats 把静态页面生成到该目录中

# mkdir /data0/htdocs/vps/awstats
# perl /usr/local/awstats/tools/awstats_buildstaticpages.pl -update \
-config=vps.15099.net -lang=cn -dir=/data0/htdocs/vps/awstats \
-awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl
上述命令的具体意思如下:

* /usr/local/awstats/tools/awstats_buildstaticpages.pl Awstats 静态页面生成工具
* -update -config=vps.15099.net 更新配置项
* -lang=cn 语言为中文
* -dir=/data0/vps/awstats 统计结果输出目录
* -awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl Awstats 日志更新程序路径。

接下来,只需在nginx.conf 中,把该目录配置上去即可。例子如下:(加粗部分):

location ~ ^/awstats/ { # html 静态页面目录
root /data0/htdocs/vps/awstats;
index index.html;
access_log off;
error_log off;
charset gb2312; #最好把默认编码改成 gb2312避免浏览器因自动编码出现乱码的情况
}

location ~ ^/icon/ { # 图标目录
root /usr/local/awstats/wwwroot;
index index.html;
access_log off;
error_log off;
charset gb2312;
}
用浏览器查看到统计的详细结果 http://vps.15099.net/awstats/awstats.vps.15099.net.html

至此,使用 awstats 已能完全支持 Nginx 的日志统计。

3、配置 Awstats 自动运行
为了让整个日志的统计过程自动完成,我们需要设置 crontab 计划任务,让 Nginx 日志切割以及 Awstats 自动运行,定时生成结果页面。

#crontab -e

11 59 * * * /usr/local/webserver/nginx/sbin/logcron.sh #半夜11:59 进行日志切割

00 1 * * * /usr/local/awstats/tools/awstats_buildstaticpages.pl \
-update -config=vps.15099.net -lang=cn -dir=/data0/htdocs/vps/awstats \
-awstatsprog=/usr/local/awstats/wwwroot/cgi-bin/awstats.pl

#凌晨00:01 Awstats进行日志分析

:wq保存退出
#crontab /etc/crontab 指定cron所执行的配置档路径
4、保护日志统计结果页面
一般站长都不愿随便让人知道自己站的真实流量,所以要把 Awstats 统计结果页面进行密码保护。Nginx 使用的是跟 Apache 一样的密码加密格式,这里需要用到 apache 自带的工具 htpasswd。

#/usr/local/apache2/bin/htpasswd -c admin.pass admin #用户名为admin

New password: 输入密码
Re-type new password: 重复输入
Adding password for user admin 创建成功

然后把 admin.pass 这个密码包找个的地方藏起来.
修改 nginx.conf 在 location 中加入(加粗部分):

location ~ ^/awstats/ { # html 静态页面目录
root /data/admin_web;
index index.html;
access_log off;
error_log off;
charset gb2312;
auth_basic "admin"; #用户名
/opt/ngx/conf/admin.pass; #密码包路径


修改 Nginx 配置完毕后,执行命令kill -HUP `cat /usr/local/webserver/nginx/nginx.pid`
5、总结

尽管跟 Apache HTTP Server 相比较而言,Nginx 的功能是比较弱的,但是我们依然可以利用一些技巧来规避这些弱点,Nginx 的设计者肯定也是充分考虑到这个问题。现在也越来越多的第三方开发的模块在逐渐的扩展 Nginx 的功能。但是从应用本身的角度而言,Nginx 更倾向于卓越的性能,而非大而全的功能,因而在一些附加方面的功能,我们也不能对之要求过高。