ftp中“二进制传输模式”和“ASCII传输模式”有什么区别?

《Red Hat Linux 指南:服务器设置与程序设计篇》第2章FTP:跨越网络传送文件,这一章为您介绍实现FTP协议的服务器和客户端有很多种、以及开FTP服务器可以让用户以匿名用户身份anonymous或者ftp登录,最后为您介绍FTP提供了两种传输文件的模式:二进制模式和ASCII模式。本小节讲述的是二进制传输模式和ASCII传输模式。

2.3.6 二进制传输模式和ASCII传输模式

FTP服务器vsftpd能够(但并不总是)提供两种文件传输模式。二进制模式传输总是复制文件的精确的、字节对字节的文件映像,而绝不会改变行结束符。所有二进制文件都用二进制模式传送。除非需要转换行结束符,否则也要使用二进制模式来传输ASCII文件。 Continue reading

windows 2003自带的FTP的设置?

windows 2003自带的FTP(iis里)如何设置?打开 Internet信息服务(IIS)管理器 (如下图)

ms_ftp_1

可以看到 Internet信息服务(IIS)管理器 中已经出现了 FTP站点 菜单(如下图)

ms_ftp_2

单击 FTP站点 ,右边呈现的是 相关数据和参数(如下图)

ms_ftp_3

接着,我们来打开它的属性栏 ,右键单击它,单击属性(如下图)

ms_ftp_4

选项卡 FTP站点 下,列出来相关参数,默认的FTP的TCP连接端口是21,这个一般不改它(如下图)

ms_ftp_5

单击 安全账户 选项卡,下面可以勾选匿名,也可以添加用户账号,我们这里只是演示,所以不改它(如下图)

ms_ftp_6

接下来,单击 主目录 设置修改我们这个ftp的指向访问目录,我们这里指向 F盘(如下图)

ms_ftp_7

选择后,再单击下一步(N)> (如下图)

ms_ftp_8

设置访问权限,读取 就是只能看里面内容,能下载,但不能上传;写入,就是可以看,下载,还有上传(如下图)

ms_ftp_9

在你的电脑上打开FTP客户端软件,输入IP,您windows远程桌面的用户名和密码,就可以登录FTP了。

ServU和ServU-Plus结合对ftp用户进行数据库(Mysql)验证

基本步骤:
1.

下载Mysql for windows的版本,目前最新的为mysql-4.0.20d-win。下载并安装启动。
2.      在mysql.com网站下载对应的mysql-odbc驱动程序,安装在windows 2000/NT/advance server操作系统.
3.      在操作系统中,点击控制面板->管理工具->数据源(ODBC),添加对MySQL ODBC的支持。
4.      使用servU-Plus插件程序,ServUPlus是Serv-U的一个插件,其主要功能就是捕捉Serv-U的事件,然后做适当的功能增强、扩展。解压后出现目录结构如下:
[\]根目录
Readme.txt      自述文件
MySQL_SQL.txt      MySQL的数据结构
MSSQL_SQL.txt      MSSQL的数据结构
Update.txt      升级说明
[\ServU]目录
dbexpmysql.dll            访问MySQL的DLL(可选)
dbexpmss.dll            访问MSSQL的DLL(可选)
libmySQL.dll            数据库接口DLL
MIDAS.DLL            数据库接口DLL
ServUPlus.dll            扩充功能库
ServUPlus.ini            配置文件
ServUPlus_Man.exe      管理主程序
5.      安装条件
1)      理论ServU 3.1以上,建议ServU 4.1.0.0或以上(因为这个版本修正了对DLL的支持,以及很多BUG)
2) ServU上面安装MySQL
6.      建立数据库
建立数据库的SQL语句:
SQL: MySQL_SQL.txt
MSSQL: MSSQL_SQL.txt
7.      修改配置文件(ServUPlus.ini)
[DataServer]            //[数据库部分]
Type=1                  //数据库类型1:MySQL,2:MS SQL Server
Host=127.0.0.1            //IP
User=root            //用户
Pass=                  //密码
Database=ServUPlus      //数据库
AutoRetry=1            //是(1)否(0)自动尝试连接
RetryTime=60            //尝试连接的间隔时间(秒)

[Option]            //[其他]
User_Cache=60            //缓存时间(秒)
NameAddStr=sisha_      //用户名前面增加的标识(暂时无用)
RatiosType=1            //(0)为下载完毕才扣下载量,(1)为按照实际下载量扣。(推荐使用1)
LockDomain=0            //是(1)否(0)锁定域(4.1.0.0以下不能使用)

[FilterCommand]            //[过滤命令]
ListR=0                  //是(1)否(0)过滤LIST -alR命令

[IPRule]            //[IP限制规则]
Max=3                  //用户自定义IP允许的个数,-1为不必输入,0为不限制个数
Depth=2                  //规则的位数,0为不限制

[Log]                  //[Log记录]
DL_OK=1                  //是(1)否(0)记录下载文件成功
DL_ERR=1            //是(1)否(0)记录下载文件失败
UL_OK=1                  //是(1)否(0)记录上传文件成功
UL_ERR=1            //是(1)否(0)记录上传文件失败

[SFVCheck]            //[SFV校验]
SFVEnable=1            //是(1)否(0)激活SFV检测
DelOtherMsg=1            //是(1)否(0)删除空文件(文件名为-*-)
HideTmpFile=1            //是(1)否(0)隐藏临时文件
AddMsg=sisha            //这个就是你加入的标识,随便起一个即可,比如起名叫sisha,然后你上传SFV后会显示:-[#####—–.50%]-[5.of.10]-[ServUPlus.******]-[sisha]-,就在方括号内
MsgUpFile=1            //是(1)否(0)标识上传中的文件
SkipUpFile=1            //是(1)否(0)跳过检测上传中的文件
SkipCompleteSFV=1      //是(1)否(0)跳过已经检测过的SFV文件。
SkipFileMax=10            //如果被检测的文件大于10 byte,则跳过检测,0为不限制。(建议用)
MsgSkipFile=1            //是(1)否(0)标识跳过检测的文件(限制了文件大小才显示)
LimitCheckPath=1      //是(1)否(0)限制要检测的目录(限制了,就只会检测以下的目录)
CheckPath1=E:\
CheckPath2=F:\            //这个是要检查的目录(包括其子目录),也就是其他用户可以上载的目录,如有多个目录要检查…用CheckPath3=XXX…CheckPath4=XXXX如此类推

[Msgs]                  //[自定义信息]
GroupTooMany=Your group is too many users – please try again later.
AccountTooMany=Too many users – please try again later.
AccountExpired=Your account expired.
8.      安装扩充功能库(ServUPlus.dll)
以 Serv-U 4.1.0.0 为例:
1) 关闭 Serv-U(单击停止服务器 -> 立即停止)。
2) 将ServU目录下面的5个文件及ServUPlus.ini文件放在上 Serv-U 的安装目录下(不能放在其它目录)。
3) 修改 ServUDaemon.ini,添加以下设置(Serv-U 在启动时自动调用):
[EXTERNAL]
ClientCheckDLL1=ServUPlus.dll
EventHookDLL1=ServUPlus.dll
9.      重新启动 Serv-U(单击开始服务器),如果安装成功,您会在看到如下信息,表示 ServUPlus.dll 已成功加载。
Mon 15Jul02 12:48:45 – Serv-U FTP Server v4.0 (4.1.0.0) – Copyright (c) 1995-2002 Cat Soft, All Rights Reserved – by Rob Beckers
Mon 15Jul02 12:48:45 – Cat Soft is an affiliate of Rhino Software, Inc.
Mon 15Jul02 12:48:46 – Loaded external DLL ServUPlus.dll
…………………..
Mon 15Jul02 12:48:50 – Valid registration key found
Mon 15Jul02 12:48:50 – Loaded external DLL ServUPlus.dll
【Loaded external DLL ServUPlus.dll】有了这两行才说明安装成功
最好也要查看一下当前目录下的ServUPlus_LOG,如果出现:
2004-7-16 10:14:46 – Serv-U正在启动…
2004-7-16 10:14:46 – 成功载入ServUPlus.INI!
2004-7-16 10:14:46 – 成功连接数据库,插件启动正常!
说明servU-Plus已经正常加载了配置文件
10.      使用方法,以两组用户为例:
一组具有完全权限:包括目录建立,删除,更名;文件的上传,下载,删除,更名操作
另一组只有下载的权限
在servU服务器中,建立对应的两个真实用户,分别为upload,download,建立后可以禁用此两个用户,但是帐户必须存在。(做为虚拟用户映射所用)

11.      打开servu-Plus管理程序,界面如下,添加虚拟组
图一
图二
12.      完成后就可以用FTP客户端软件进行连接和控制。

[精典教程]freebsd下安装mysql,apache,php,phpmyadmin记录

第一次在FREEBSD下配置环境,感觉好爽,安装的时候也参考了别人的介绍,在此表示感谢。
为了方便以后的操作,现在记录写下来。

安装MYSQL时要注意:
mysql默认数据库放在/var分区里,如果你的数据库很大,那么你需要在前面分区的时候把/var分区分到足够大,
如果你想改变它的安装目录,例如安装到:/usr/db.

#cd /usr/ports/databases/mysql51-server
#make WITH_CHARSET=utf8 WITH_XCHARSET=all WITH_PROC_SCOPE_PTH=yes SKIP_DNS_CHECK=yes BUILD_OPTIMIZED=yes install clean

#cp /usr/local/share/mysql/my-large.cnf    /etc/my.cnf
#/usr/local/bin/mysql_install_db
#chown -R mysql:mysql /var/db/mysql
#/usr/local/bin/mysqld_safe & //启动mysql 服务
#rehash
#mysqladmin -u root password ‘root密码’
#mysql -u root -p
输入root密码,进入mysql>提示符

开始下载并开始安装数据库(上面的with_chraset=all不包含一些字符集的,如GBK,需要安装GBK教程参考:http://blog.haohtml.com/archives/7811)。编译安装完之后,重启机器可以启动mysqld守护进程,可以

#mysql
如果能够见到
mysql>
提示符,说明安装好了。不过,刚装完的mysql默认的数据库连接是100个,远远不能应付大网站的要求。按照这个办法加大吧.

如果用port安装的是mysql55版本的话,在执行mysql_install_db的时候会提示”FATAL ERROR: Could not find ./bin/my_print_defaults“错误,解决办法:http://blog.haohtml.com/archives/9674
最后:在/etc/rc.conf 添加一行命令:
mysql_enable = “YES”
或者直接在命令行中输入命令:
echo ‘mysql_enable=”YES”‘ >> /etc/rc.conf
使mysql成为一项服务,随机启动,省去手动启动mysql服务了.

重启和停止MySQL的命令:

 /usr/local/etc/rc.d/mysql-server start|stop|restart

如果以后要修改mysql的数据保存路径,请参考:http://blog.haohtml.com/archives/7989

安装APACHE

#cd /usr/ports/www/apache22
#make install clean

以上使用ports方式安装的apache默认目录并非大家习惯使用的/usr/local/apache,而是/usr/local/etc/apache22目录,可以使用以下命令指定apache的安装目录:
#make PREFIX=/usr/local/apache install,

Unix下apache默认的mpm模块用的是prefork,如果更换为worker的话,请编译的时候添加参数:–with-mpm=worker,prefork与worker的区别见:http://blog.haohtml.com/archives/4656

详细使用方法点击这里查看(另类用法:make deinstall,make clean,make rmconfig,make reinstall FORCE_PKG_REGISTER=”yes”)

启动APACHE

/usr/local/sbin/httpd -k start

查看是否安装成功
配置httpd.conf
/usr/local/etc/apache22/httpd.conf
设置根目录
/home/web/blog.haohtml.com
在AddType application/x-gzip .gz .tgz后面加上下面3行:
#php support

AddType application/x-httpd-php .php
AddType application/x-httpd-php-source .phps

随后设置网站默认启动页允许为index.php。同样在httpd.conf里编辑,不必退出。找到
DirectoryIndex index.html index.html.var
添加index.php进去,为:
DirectoryIndex index.php index.html index.html.var
还有其它设置,根据需要自行处理
最后:在/etc/rc.conf 添加:

apache22_enable = “YES”

或者直接在命令行中输入:

echo ‘apache22_enable=”YES”‘ >> /etc/rc.conf

这样服务器启动时,apache就会启动,注意是apache22_enable,这里是两个数字2.

要注意的:
(在FreeBSD下使用ports安装apache22会出现类似的warming:
No such file or directory: Failed to enable the ‘httpready’ Accept Filter
解决方法是:

#kldload accf_http (有关kldload命令简介点击这里查看)

并将以下语句写入到/boot/defaults/loader.conf中,以便下次启动自动装载模块

accf_data_load=”YES”
accf_http_load=”YES”

这是因为不能启动FreeBSD自带的一个基于http端口过滤的模块。这个模块的作用很不错–检查HTTP请求是否完整,符合规则accpt一个Http进程,否则就扔掉。)

安装PHP5

#cd /usr/ports/lang/php5
#make install clean

+——————————————————————–+
|                      Options for php5 5.3.2                        |
| +—————————————————————-+ |
| |        [X] CLI        Build CLI version                        | |
| |        [X] CGI        Build CGI version                        | |
| |        [X] APACHE     Build Apache module                      | |
| |        [ ] DEBUG      Enable debug                             | |
| |        [X] SUHOSIN    Enable Suhosin protection system         | |
| |        [ ] MULTIBYTE Enable zend multibyte support            | |
| |        [ ] IPV6       Enable ipv6 support                      | |
| |        [ ] MAILHEAD   Enable mail header patch                 | |

#cp /usr/local/etc/php.ini-dist /usr/local/etc/php.ini
如果提示php.ini-dist,请使用php.ini-production.

修改 /usr/local/etc/php.ini文件,修改date.timezone = PRC,解决php中相差八小时的问题.

安装完毕后,安装扩展

cd /usr/ports/lang/php5-extensions/
make install clean

根据需要选择插件包,安装过程中要在弹出的对话框中选中mysql选项,否则不支持mysql数据库的.建议把mysqli扩展项也选择上,现在用这个扩展的越来越多.如果没有安装请参考:http://blog.haohtml.com/archives/10013.当然包越多所需要的时间越长,大概需要30分钟.测试安装是否成功 .

注意这里先安装了apache,再安装了php,这样安装完php后,将自动在php.ini文件里添加php模块(LoadModule php5_module        libexec/apache22/libphp5.so)

安装Zend Optimizer

cd /usr/ports/devel/ZendOptimizer/
make install clean
===> ZendOptimizer-3.3.0.a cannot install: doesn’t work with PHP version : 5 (Doesn’t support PHP 5).
*** Error code 1

Stop in /usr/ports/devel/ZendOptimizer.

注:如果你用的是FreeBsd8.0版本的可能会出现上面的情况,这里可以使用使用pkg_add命令来安装Zend Optimizer.

#pkg_add -r ZendOptimizer
#rehash
执行结果将类似如下:
Fetching ftp://ftp.freebsd.org/pub/FreeBSD/ports/i386/packages-8.0-release/Latest/ZendOptimizer.tbz… Done.
pkg_add: warning: package ‘ZendOptimizer-3.3.0.a’ requires ‘libxml2-2.7.5’, but ‘libxml2-2.7.7’ is installed
pkg_add: warning: package ‘ZendOptimizer-3.3.0.a’ requires ‘php5-5.2.11’, but ‘php5-5.3.2’ is installed

********************************************************************************

You have installed the ZendOptimizer package.

Edit /usr/local/etc/php.ini and add:

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

NOTE: PHP should be compiled in non-debug mode (default).

********************************************************************************
虽然居然成功了,但也可能用phpinfo时候还是不行的![可惜最后还是不行,得到的教训是,不要用太新的版本,这样资料和环境的支持会很不完善。]

安装phpMyAdmin
# cd /usr/ports/databases/phpmyadmin/
# make fetch
接下来是一些提示,下载。
#cd /usr/ports/distfiles/
#tar xvf phpMyadmin-2-11.9-languages.bz2 -C /home/web/phpmyadmin
设置一下就可以了

设置FTP
[教程]FreeBSD vsftpd+pam虚拟用户方案配置http://blog.haohtml.com/archives/7213

安装memcache(服务端)
1.首先安装memcache,因为是在FreeBSD环境下,所以我们采用最简单的ports方式来安装memcache

cd /usr/ports/databases/memcached/
make install clean

ports会自动寻找源进行下载,然后编译安装
安装好memcache以后,编辑/etc/rc.conf文件,
在最后一行加一句

memcached_enable=”YES”

然后保存退出。
memcache会随着开机自动启动,手动启动的命令是:

/usr/local/etc/rc.d/memcached start

好了,现在memcache已经安装并启动完毕了。
2.安装pecl::memcache扩展(客户端),这是php的扩展,安装以后可以使用Memcache函数库,php手册上有详细的使用法说明。

cd /usr/ports/databases/pecl-memcache/
make install clean

安装好以后,会自动在/usr/local/etc/php/extension.ini 加上一行 extension=memcache.so
用命令查看一下:

cat /usr/local/etc/php/extensions.ini

如果看见最后一行有 extension=memcache.so

说明已经安装好了
这个时候重新启动一下apache server即可
phpinfo()可以看到memcache扩展的信息。

本文来自ChinaUnix博客,如果查看原文请点:http://blog.chinaunix.net/u/13004/showart_1190048.html