一、使用代理服务器的意义
首先举一个例子,通过这个例子更好的理解“代理”的含义。
中国的茶叶举世闻名,假如澳大利亚的男女非常喜欢喝中国茶。此时,一茶商见有利可图,就准备从中国进口一批茶叶。大家都知道,澳大利亚是一个纯粹的岛国,和中国有浩瀚的海洋相隔。该茶商没有办法飘洋过海的到中国来进茶,那么,他就需要请求专门的海上运输公司帮忙了。双方协商好以后,海上运输公司就启程到中国采购茶叶,然后再返航并把采购回来的茶叶递交给茶商。这样,整个工作就进行完了。
在这个过程中,海上运输公司其实就充当了一个“代理人”的工作。他专门接收那些需要海运的业务请求,然后完成业务,并把结果提交给客户。
计算机网络中的“代理服务器”其实也就是一个“代理人”,它的作用就是让不能上网的客户访问Internet。
首先举一个例子,通过这个例子更好的理解“代理”的含义。
中国的茶叶举世闻名,假如澳大利亚的男女非常喜欢喝中国茶。此时,一茶商见有利可图,就准备从中国进口一批茶叶。大家都知道,澳大利亚是一个纯粹的岛国,和中国有浩瀚的海洋相隔。该茶商没有办法飘洋过海的到中国来进茶,那么,他就需要请求专门的海上运输公司帮忙了。双方协商好以后,海上运输公司就启程到中国采购茶叶,然后再返航并把采购回来的茶叶递交给茶商。这样,整个工作就进行完了。
在这个过程中,海上运输公司其实就充当了一个“代理人”的工作。他专门接收那些需要海运的业务请求,然后完成业务,并把结果提交给客户。
计算机网络中的“代理服务器”其实也就是一个“代理人”,它的作用就是让不能上网的客户访问Internet。
操作系统:RedHat9
软件版本:apache_1.3.28.tar.gz,php-4.3.3.tar.gz,mysql-4.0.15.tar.gz
所有操作都假定在root下执行
1、mysql
1.1创建mysql组和mysql用户
/usr/sbin/groupadd mysql
/usr/sbin/useradd -g mysql mysql
1.2安装mysql
tar -xzvf mysql-4.0.15.tar.gz
cd mysql4.0.15
./configure --prefix=/usr/local/mysql -with-charset=gbk -with-extra-charsets=all
make
make install
#cp support-files/my-medium.cnf /etc/my.cnf或者cp /opt/mysql/share/mysql/my-medium.cnf /etc/my.cnf
cd scripts
./mysql_install_db
chown -R root /usr/local/mysql
chown -R mysql /usr/local/mysql/var
chown -R mysql /usr/local/mysql/var/
chown -R mysql /usr/local/mysql/var/.
chown -R mysql /usr/local/mysql/var/mysql
chown -R mysql /usr/local/mysql/var/mysql/
chgrp -R mysql /usr/local/mysql
向/etc/ld.so.conf中加入两行:
/usr/local/mysql/lib/mysql
/usr/local/lib
载入库,执行
软件版本:apache_1.3.28.tar.gz,php-4.3.3.tar.gz,mysql-4.0.15.tar.gz
所有操作都假定在root下执行
1、mysql
1.1创建mysql组和mysql用户
/usr/sbin/groupadd mysql
/usr/sbin/useradd -g mysql mysql
1.2安装mysql
tar -xzvf mysql-4.0.15.tar.gz
cd mysql4.0.15
./configure --prefix=/usr/local/mysql -with-charset=gbk -with-extra-charsets=all
make
make install
#cp support-files/my-medium.cnf /etc/my.cnf或者cp /opt/mysql/share/mysql/my-medium.cnf /etc/my.cnf
cd scripts
./mysql_install_db
chown -R root /usr/local/mysql
chown -R mysql /usr/local/mysql/var
chown -R mysql /usr/local/mysql/var/
chown -R mysql /usr/local/mysql/var/.
chown -R mysql /usr/local/mysql/var/mysql
chown -R mysql /usr/local/mysql/var/mysql/
chgrp -R mysql /usr/local/mysql
向/etc/ld.so.conf中加入两行:
/usr/local/mysql/lib/mysql
/usr/local/lib
载入库,执行
step1:下载vsftpd
wget:ftp://vsftpd.beasts.org/users/cevans/vsftpd-2.0.1.tar.gz
step2:解压vsftpd的压缩包
t
ar zxvf vsftpd1.2.1.tar.gz
cd vsftpd1.2.1
step3:安装vsftpd
useradd nobody
mkdir /usr/share/empty
make
make install
cp vsftpd.conf /etc/
cp RedHat/vsftpd.pam /etc/pam.d/vsftpd
注vsftpd的可执行文件在/usr/local/sbin/vsftpd
step4:修改配置文件,让vsftpd以“standalone”模式运行
listen=YES
local_enable=YES
pam_service_name=vsftpd
write_enable=YES
chroot_local_users=YES
step5:启动并测试
/usr/local/sbin/vsftpd &
现在就可以使用系统账户登陆ftp了
wget:ftp://vsftpd.beasts.org/users/cevans/vsftpd-2.0.1.tar.gz
step2:解压vsftpd的压缩包
t
ar zxvf vsftpd1.2.1.tar.gz
cd vsftpd1.2.1
step3:安装vsftpd
useradd nobody
mkdir /usr/share/empty
make
make install
cp vsftpd.conf /etc/
cp RedHat/vsftpd.pam /etc/pam.d/vsftpd
注vsftpd的可执行文件在/usr/local/sbin/vsftpd
step4:修改配置文件,让vsftpd以“standalone”模式运行
listen=YES
local_enable=YES
pam_service_name=vsftpd
write_enable=YES
chroot_local_users=YES
step5:启动并测试
/usr/local/sbin/vsftpd &
现在就可以使用系统账户登陆ftp了
今天,偶然发现服务器网站目录,可以任意浏览,存在安全隐患,于是,就从以前的安装文档中查了,最终解决了。
方法如下:
我的服务器是用的windows server 2003做的服务器,php的环境用的是easyapm_v2.0.2.exe服务器组件。
修改d:\usr\local\apache2\conf\vhost\***.conf
***代表名称
最后是
### 文档路径权限定义 ###
Options indexs FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
将options后的indexs去掉,重启apache即可!
方法如下:
我的服务器是用的windows server 2003做的服务器,php的环境用的是easyapm_v2.0.2.exe服务器组件。
修改d:\usr\local\apache2\conf\vhost\***.conf
***代表名称
最后是
### 文档路径权限定义 ###
Options indexs FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
将options后的indexs去掉,重启apache即可!
服务器MYSQL的备份问题,一直是一个大难题,随着数据量的增大,手动备份越来越麻烦,于是写了个小程序,来实现MYSQL自动备份。使用方法:
将下面的代码在一个bat文件,设置一下计划任务每天执行。
同时里面的路径也要改一下的。
SET bkupdir=c:是设置备份文件存储目录。
mysqldir=D:\usr\local\mysql4 是mysql安装路径
SET dbname=dedev3 数据库名
SET dbuser=root 用户名
SET dbpassword=123 用户密码
SET CharacterSet=ujis 字符集
*****************代码开始****************
for /f "Tokens=1 Delims=/ " %%i in ('date /t') do set dt=%%i
for /f "Tokens=1" %%i in ('time /t') do set tm=%%i
set tm=%dt%
SET bkupdir=c:
SET mysqldir=D:\usr\local\mysql4
path D:\usr\local\mysql4\bin
SET dbname=dedev3
SET dbuser=root
SET dbpassword=123
SET CharacterSet=ujis
@ECHO Beginning backup of %dbname%...
mysqldump -u %dbuser% -p%dbpassword% %dbname% --add-drop-table --complete-insert --opt>%bkupdir%\%dbname%-%tm%.sql
@ECHO Done! New File: %bkupdir%\%dbname%-%tm%.sql
pause
*******************代码结束*****************
注意:代码只是*以内的,不包括*.
另外附上还原代码,大家可根据自己的实际情况,适当修改一下即可。
****************代码开始***************
@ECHO Beginning backup of 1234...
D:\usr\local\mysql4\bin\mysql -u root -p123 1234 @ECHO Done! New File:C:\456.sql
pause
****************代码结束***************
欢迎大家与我来讨论mysql备份还原问题,你有好的建议,请回复告知!
将下面的代码在一个bat文件,设置一下计划任务每天执行。
同时里面的路径也要改一下的。
SET bkupdir=c:是设置备份文件存储目录。
mysqldir=D:\usr\local\mysql4 是mysql安装路径
SET dbname=dedev3 数据库名
SET dbuser=root 用户名
SET dbpassword=123 用户密码
SET CharacterSet=ujis 字符集
*****************代码开始****************
for /f "Tokens=1 Delims=/ " %%i in ('date /t') do set dt=%%i
for /f "Tokens=1" %%i in ('time /t') do set tm=%%i
set tm=%dt%
SET bkupdir=c:
SET mysqldir=D:\usr\local\mysql4
path D:\usr\local\mysql4\bin
SET dbname=dedev3
SET dbuser=root
SET dbpassword=123
SET CharacterSet=ujis
@ECHO Beginning backup of %dbname%...
mysqldump -u %dbuser% -p%dbpassword% %dbname% --add-drop-table --complete-insert --opt>%bkupdir%\%dbname%-%tm%.sql
@ECHO Done! New File: %bkupdir%\%dbname%-%tm%.sql
pause
*******************代码结束*****************
注意:代码只是*以内的,不包括*.
另外附上还原代码,大家可根据自己的实际情况,适当修改一下即可。
****************代码开始***************
@ECHO Beginning backup of 1234...
D:\usr\local\mysql4\bin\mysql -u root -p123 1234
pause
****************代码结束***************
欢迎大家与我来讨论mysql备份还原问题,你有好的建议,请回复告知!
一、再Web中添加用户
因为添加用户,所以你运行PHP程序的用户必须是管理员权限(Administrator),并且同时需要你的php.ini中的安全模式没有打开,并且关闭函数中没有关闭system()、exec()、passthru()等函数。
( 以下说明针对Windows2000/Windows XP/Windows 2003 )
1、使用IIS做Web服务器
因为添加用户,所以你运行PHP程序的用户必须是管理员权限(Administrator),并且同时需要你的php.ini中的安全模式没有打开,并且关闭函数中没有关闭system()、exec()、passthru()等函数。
( 以下说明针对Windows2000/Windows XP/Windows 2003 )
1、使用IIS做Web服务器
system("reboot");或system("shutdown -r");
但要有权限,php以root身份运行,apache里可以设 ,一般PHP的权限都是nobody或是别的,但不会拥有 ROOT 权限. 想要有root权限就去找个super来装,在super中配置reboot的别名
然后执行system("reboot");才可实现
提升权限可参照:http://jed.dzhope.com/read.php/184.htm
但要有权限,php以root身份运行,apache里可以设 ,一般PHP的权限都是nobody或是别的,但不会拥有 ROOT 权限. 想要有root权限就去找个super来装,在super中配置reboot的别名
然后执行system("reboot");才可实现
提升权限可参照:http://jed.dzhope.com/read.php/184.htm
在PHP中运行只有root用户才可以运行的外部程序,一直是个老问题,用常规的办法很难实现。这是因为一般情况下,PHP是作为APACHE的一个模块的,也就是说,PHP是APACHE的一部分,而APACHE除了suEXEC机制外,是不能以不同的用户ID来执行命令的,但suEXEC机制只能CGI有效。
网上曾经有一篇文章,说用调用"su - -c COMMAND"可以实现,但经过多次试验,发现不行,因为su命令必须在STDIN上输入root的密码。
怎么办?用常规的方法难以奏效,只能再想其它的方法了。成功的关键在于能有一个可以切换用户ID但又可以在命令上输入密码(或不用输入密码)的工具。有这样的工具吗?有,它就是super。
网上曾经有一篇文章,说用调用"su - -c COMMAND"可以实现,但经过多次试验,发现不行,因为su命令必须在STDIN上输入root的密码。
怎么办?用常规的方法难以奏效,只能再想其它的方法了。成功的关键在于能有一个可以切换用户ID但又可以在命令上输入密码(或不用输入密码)的工具。有这样的工具吗?有,它就是super。
推荐杀毒最强组合:不进安全模式也能杀光病毒. 如果不行你K我! (自动杀毒,免费升级!)
卡巴斯基被誉为世界最好的杀毒软件. 杀毒能力排第一名! 但任何软件都不能100%堵住病毒,所以加装:Ewido Security Suite Plus(最好的防杀木马软件) v3.5 完美注册汉 (已经试验无冲突,各管一方,互补互助)
卡巴斯基中文单机版(Kaspersky Anti-Virus Personal)
卡巴斯基是世界最好的杀毒软件.杀毒能力排第一名!
卡巴斯基被誉为世界最好的杀毒软件. 杀毒能力排第一名! 但任何软件都不能100%堵住病毒,所以加装:Ewido Security Suite Plus(最好的防杀木马软件) v3.5 完美注册汉 (已经试验无冲突,各管一方,互补互助)
卡巴斯基中文单机版(Kaspersky Anti-Virus Personal)
卡巴斯基是世界最好的杀毒软件.杀毒能力排第一名!
1、拷贝PHP目录中的libeay32.dll 和 ssleay32.dll 两个文件到 system32 目录。
2、修改php.ini:配置好 extension_dir ,去掉 extension = php_curl.dll 前面的分号。
呵呵 就这么简单。
curl
curl是一个利用URL语法在命令行方式下工作的文件传输工具。它支持很多协议:FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP。curl同样支持HTTPS认证,HTTP POST方法, HTTP PUT方法, FTP上传, kerberos认证, HTTP上传, 代理服务器, cookies, 用户名/密码认证, 下载文件断点续传, 上载文件断点续传, http代理服务器管道( proxy tunneling), 甚至它还支持IPv6, socks5代理服务器, 通过http代理服务器上传文件到FTP服务器等等,功能十分强大。Windows操作系统下的网络蚂蚁,网际快车(FlashGet)的功能它都可以做到。准确的说,curl支持文件的上传和下载,所以是一个综合传输工具,但是按照传统,用户习惯称curl为下载工具。
2、修改php.ini:配置好 extension_dir ,去掉 extension = php_curl.dll 前面的分号。
呵呵 就这么简单。
curl
curl是一个利用URL语法在命令行方式下工作的文件传输工具。它支持很多协议:FTP, FTPS, HTTP, HTTPS, GOPHER, TELNET, DICT, FILE 以及 LDAP。curl同样支持HTTPS认证,HTTP POST方法, HTTP PUT方法, FTP上传, kerberos认证, HTTP上传, 代理服务器, cookies, 用户名/密码认证, 下载文件断点续传, 上载文件断点续传, http代理服务器管道( proxy tunneling), 甚至它还支持IPv6, socks5代理服务器, 通过http代理服务器上传文件到FTP服务器等等,功能十分强大。Windows操作系统下的网络蚂蚁,网际快车(FlashGet)的功能它都可以做到。准确的说,curl支持文件的上传和下载,所以是一个综合传输工具,但是按照传统,用户习惯称curl为下载工具。