22
May
如果你已经是一名优秀的Web开发人员,那请路过即可。如果你还是一个准备入行或刚入行的菜鸟,那本文倒值得一读。要成为一名优秀的Web开发人 员,没有捷径可走,本文就是为那些还在苦苦寻找学习目标的人编写的。
第一步:学好HTML
HTML(超文本标记语言)是网页的核心,因此你首先应该学好它,不要害怕,HTML很容易学习的,但也很容易误用,学懂容易要学精还得费点功夫, 但学好HTML是成为Web开发人员的基本条件。(注:随着HTML 5规范出炉日期 将近,了解HTML 5也将成为Web开发人员的必修课)
学习资源:
HTML Dog (http://htmldog.com/)
HTML入门指南 (http://www.w3.org/MarkUp/Guide/)
W3C HTML学习教程 (http://www.w3schools.com/html/)
第二步:学好服务器端脚本语言
服务器端脚本编程也是Web开发人员的基本功之一,你只需挑选一个服务器端脚本语言,然后学好它,目前流行的服务器脚本语言有:
PHP (http://php.net/)
Python (http://www.python.org/)
Ruby (http://www.ruby-lang.org/en/)
第三步:学好SQL
要构建动态页面就必须使用到数据库,但这么多数据库产品,该 如何是好呢?别担心,它们都会遵循标准的SQL原则,学习SQL的资源包括:
W3C SQL学习教程 (http://www.w3schools.com/SQl/default.asp)
MySQL主页 (http://www.mysql.com/)
SQL维基百科 (http://en.wikipedia.org/wiki/SQL)
第四步:学好CSS
涉及到网页外观时,就需要学习CSS了,它可以帮你把网页做得更美观。
学习资源:
HTML Dog (http://htmldog.com/)
CSS禅意花园 (http://www.csszengarden.com/) 已有中文版图书。
第五步:学好JavaScript
今天大部分Web开发人员都喜欢使用jQuery(http://jquery.com/), 学习JavaScript的基本语法,以及如何使用JavaScript编程将会提高你的技能。
学习资源:
webmonkey.com上的JavaScript学习资源 (http://www.webmonkey.com/tutorial/JavaScript_Tutorial)
W3C JavaScript学习教程 (http://www.w3schools.com/JS/default.asp)
第六步:学好正则表达式
虽然它并不像其它知识那么重要,但学习了正则表达式后,如果使用得当将会节省你很多时间,从验证到高亮显示它够能帮到你。
第七步:学习一点Unix和Linux的基本知识
这并不是必须的,但知道一点Linux命令不会伤害到你,或许你还不知道,大部分Web服务器都运行在Unix和Linux平台上,如果我是你,我 会去学习一些基本的Linux命令的。
第八步:了解Web服务器
你不必在这上面花太多精力,但对Apache的基本配置,.htaccess配置技巧有一些掌握的话,将来必定受益,而且这方面的知识学起来也相对 容易,不会花多长时间。
第九步:熟悉版本控制系统的用法
熟悉使用一种优秀的版本控制系统将很有用处,你在实际工作中就会发现精通一种版本控制系统是多么幸福。
第十步:学好Web框架
当你掌握了HTML,服务器端脚本语言,CSS和JavaScript后,就应该找一个Web框架加快你的Web开发速度,使用框架可以节约你很多 时间,如果你使用PHP,可选的框架有CakePHP,CodeIgniter,Zend等,Python程序员喜欢使用Django和 webpy,Ruby程序员喜欢使用 RoR。
怎么样,从最简单的HTML到Web框架,内容还是不少吧,要想精通这里的每一样技术,都得下苦功夫才行。
原文:10 Steps to Becoming a Great Web Developer
第一步:学好HTML
HTML(超文本标记语言)是网页的核心,因此你首先应该学好它,不要害怕,HTML很容易学习的,但也很容易误用,学懂容易要学精还得费点功夫, 但学好HTML是成为Web开发人员的基本条件。(注:随着HTML 5规范出炉日期 将近,了解HTML 5也将成为Web开发人员的必修课)
学习资源:
HTML Dog (http://htmldog.com/)
HTML入门指南 (http://www.w3.org/MarkUp/Guide/)
W3C HTML学习教程 (http://www.w3schools.com/html/)
第二步:学好服务器端脚本语言
服务器端脚本编程也是Web开发人员的基本功之一,你只需挑选一个服务器端脚本语言,然后学好它,目前流行的服务器脚本语言有:
PHP (http://php.net/)
Python (http://www.python.org/)
Ruby (http://www.ruby-lang.org/en/)
第三步:学好SQL
要构建动态页面就必须使用到数据库,但这么多数据库产品,该 如何是好呢?别担心,它们都会遵循标准的SQL原则,学习SQL的资源包括:
W3C SQL学习教程 (http://www.w3schools.com/SQl/default.asp)
MySQL主页 (http://www.mysql.com/)
SQL维基百科 (http://en.wikipedia.org/wiki/SQL)
第四步:学好CSS
涉及到网页外观时,就需要学习CSS了,它可以帮你把网页做得更美观。
学习资源:
HTML Dog (http://htmldog.com/)
CSS禅意花园 (http://www.csszengarden.com/) 已有中文版图书。
第五步:学好JavaScript
今天大部分Web开发人员都喜欢使用jQuery(http://jquery.com/), 学习JavaScript的基本语法,以及如何使用JavaScript编程将会提高你的技能。
学习资源:
webmonkey.com上的JavaScript学习资源 (http://www.webmonkey.com/tutorial/JavaScript_Tutorial)
W3C JavaScript学习教程 (http://www.w3schools.com/JS/default.asp)
第六步:学好正则表达式
虽然它并不像其它知识那么重要,但学习了正则表达式后,如果使用得当将会节省你很多时间,从验证到高亮显示它够能帮到你。
第七步:学习一点Unix和Linux的基本知识
这并不是必须的,但知道一点Linux命令不会伤害到你,或许你还不知道,大部分Web服务器都运行在Unix和Linux平台上,如果我是你,我 会去学习一些基本的Linux命令的。
第八步:了解Web服务器
你不必在这上面花太多精力,但对Apache的基本配置,.htaccess配置技巧有一些掌握的话,将来必定受益,而且这方面的知识学起来也相对 容易,不会花多长时间。
第九步:熟悉版本控制系统的用法
熟悉使用一种优秀的版本控制系统将很有用处,你在实际工作中就会发现精通一种版本控制系统是多么幸福。
第十步:学好Web框架
当你掌握了HTML,服务器端脚本语言,CSS和JavaScript后,就应该找一个Web框架加快你的Web开发速度,使用框架可以节约你很多 时间,如果你使用PHP,可选的框架有CakePHP,CodeIgniter,Zend等,Python程序员喜欢使用Django和 webpy,Ruby程序员喜欢使用 RoR。
怎么样,从最简单的HTML到Web框架,内容还是不少吧,要想精通这里的每一样技术,都得下苦功夫才行。
原文:10 Steps to Becoming a Great Web Developer
22
May
要成为一名优秀的Web开发者,并没有捷径可走,只能通过自己一步一步的努力去实现,但如果你拥有一些优秀的开发工具,则可以大大提高你的开发效 率。本文将从中挑选出十个最佳工具,供大家选择使用。
1、MySQL Format Date

网址:http://www.mysqlformatdate.com/
MySQL Format Date可以帮助开发者使用MySQL DATE_FORMAT函数来规范化自己的日期数值。开发者只需选择一个通用日期格式,然后对其进行修改来满足自己的需求。页面底部将自动生成MySQL DATE_FORMAT代码,开发者可以直接将它们拷贝粘贴到自己的代码中。
2、Script Src

网址:http://scriptsrc.net
为了及时发现自己所喜爱的Javascript代码库是否有最新版本,Web开发者可能需要不断定期在网络上搜索,这无疑会令人疲倦。 ScriptSrc.net则已经把jQuery、Mootools、Prototype和更多内容汇集到一个网页中,Web开发者只需要点击一下,就能 把相关最新版链接地址复制到自己浏览器的剪贴板中。
3、Em Chart

网址:http://aloestudios.com/tools/emchart/
我从来不喜欢在CSS文件中使用ems来定义文本尺寸,但有时候却又不得不使用它。这时Em Chart可以帮助你省时省力,它能够把ems转化为像素值。
4、Twitter API Explorer

网址:http://twitapi.com/explore/
如果你在自己创建的站点中使用了Twitter API,你一定会喜欢Twitter API Explorer网站,它可以让你通过Twitter API进行搜索。更绝的是,它可以生成立即可用的代码片段。你和你的客户能够实现即时获取。
5、Browser Sandbox

网址:http://spoon.net/browsers
毫无疑问,跨浏览器兼容性是Web开发者在日常工作中不得不面对的最大问题之一。Browser Sandbox让开发者可以从网络上运行任何Windows浏览器。唯一的缺点是,你必须使用Windows系统,该应用不能运行在苹果Mac和 GNU/Linux系统之上。
6、PHP Forms

网址:http://www.phpform.org/
Web表单是网站最重要的部分之一,但创建它们也是一件非常耗时的工作。不过,PHP Forms网站可以免费加速你的表单开发工作,它能够让你创建满足多数网站需求的高级表单。
7、.htaccess editor

网址:http://www.htaccesseditor.com/en.shtml
对任何网站来说,.htaccess文件是必用的。不过即使你还不知道怎么编写一个.htaccess文件,也不用感到担忧,该网站通过一个向导来 帮助你创建.htaccess文件。虽然它不支持非常高级的处理工作,但对于你创建的95%网站来说,它可以满足需要。
8、Smush it!

网址:http://developer.yahoo.com/yslow/smushit/
就信息表达来说,一个图片的价值可能胜过一千句话。但图片也以带宽杀手而闻名。通过使用Photoshop等软件,可以把图片优化以适应Web;但 是如果你没有这样的软件或不会使用它,Smush it也可以满足你的需要。这个在线工具的开发者是雅虎开发者网络,它可以在不降低图片质量的前提下降低图片大小。
9、CSS Compressor

网址:http://www.csscompressor.com/
假如一个网站拥有许多不同的页面布局,其CSS文件往往会变得非常庞大,并且占用大量服务器带宽。CSS Compressor可以通过移除注释、缩减和更多信息,来降低任何CSS文件的体积。另外,你还可以通过该工具配置压缩等级来满足自己的需要。
10、Test everything

该网站是你必须收藏的精品网站之一。从其名称可以看出,它能够让你测试许多事情,诸如XHTML和CSS标记、PageRank和反向链接等。
原文题目:10 must have resources for Web Developers 原文作者:Harsha M V
原文链接:http://variable3.com/blog/2010/05/10-must-have-resources-for-web-developers/
1、MySQL Format Date
网址:http://www.mysqlformatdate.com/
MySQL Format Date可以帮助开发者使用MySQL DATE_FORMAT函数来规范化自己的日期数值。开发者只需选择一个通用日期格式,然后对其进行修改来满足自己的需求。页面底部将自动生成MySQL DATE_FORMAT代码,开发者可以直接将它们拷贝粘贴到自己的代码中。
2、Script Src
网址:http://scriptsrc.net
为了及时发现自己所喜爱的Javascript代码库是否有最新版本,Web开发者可能需要不断定期在网络上搜索,这无疑会令人疲倦。 ScriptSrc.net则已经把jQuery、Mootools、Prototype和更多内容汇集到一个网页中,Web开发者只需要点击一下,就能 把相关最新版链接地址复制到自己浏览器的剪贴板中。
3、Em Chart
网址:http://aloestudios.com/tools/emchart/
我从来不喜欢在CSS文件中使用ems来定义文本尺寸,但有时候却又不得不使用它。这时Em Chart可以帮助你省时省力,它能够把ems转化为像素值。
4、Twitter API Explorer
网址:http://twitapi.com/explore/
如果你在自己创建的站点中使用了Twitter API,你一定会喜欢Twitter API Explorer网站,它可以让你通过Twitter API进行搜索。更绝的是,它可以生成立即可用的代码片段。你和你的客户能够实现即时获取。
5、Browser Sandbox
网址:http://spoon.net/browsers
毫无疑问,跨浏览器兼容性是Web开发者在日常工作中不得不面对的最大问题之一。Browser Sandbox让开发者可以从网络上运行任何Windows浏览器。唯一的缺点是,你必须使用Windows系统,该应用不能运行在苹果Mac和 GNU/Linux系统之上。
6、PHP Forms
网址:http://www.phpform.org/
Web表单是网站最重要的部分之一,但创建它们也是一件非常耗时的工作。不过,PHP Forms网站可以免费加速你的表单开发工作,它能够让你创建满足多数网站需求的高级表单。
7、.htaccess editor
网址:http://www.htaccesseditor.com/en.shtml
对任何网站来说,.htaccess文件是必用的。不过即使你还不知道怎么编写一个.htaccess文件,也不用感到担忧,该网站通过一个向导来 帮助你创建.htaccess文件。虽然它不支持非常高级的处理工作,但对于你创建的95%网站来说,它可以满足需要。
8、Smush it!
网址:http://developer.yahoo.com/yslow/smushit/
就信息表达来说,一个图片的价值可能胜过一千句话。但图片也以带宽杀手而闻名。通过使用Photoshop等软件,可以把图片优化以适应Web;但 是如果你没有这样的软件或不会使用它,Smush it也可以满足你的需要。这个在线工具的开发者是雅虎开发者网络,它可以在不降低图片质量的前提下降低图片大小。
9、CSS Compressor
网址:http://www.csscompressor.com/
假如一个网站拥有许多不同的页面布局,其CSS文件往往会变得非常庞大,并且占用大量服务器带宽。CSS Compressor可以通过移除注释、缩减和更多信息,来降低任何CSS文件的体积。另外,你还可以通过该工具配置压缩等级来满足自己的需要。
10、Test everything
该网站是你必须收藏的精品网站之一。从其名称可以看出,它能够让你测试许多事情,诸如XHTML和CSS标记、PageRank和反向链接等。
原文题目:10 must have resources for Web Developers 原文作者:Harsha M V
原文链接:http://variable3.com/blog/2010/05/10-must-have-resources-for-web-developers/
22
May
Google的使命是Web,在Google眼中,未来的一切应用都将Web化。一直以来,Google为Web开发与设计者推出了大量免费工具, 让他们更好地创建、维护、改善他们的Web站点,这些工具包含了开发、分析、维护、修补等等用途,本文将介绍15款这样的工具。
1. Google Chrome Developer Tools

这是Google Chrome中类似 Firefox Firebug以及Web Developer Toolbar的一个扩展,用于调试你的网页,包含一个DOM探测器,一个JavaScript调试台,可以设置执行断点和跟踪,一个类似YSlow的执 行分析器。
2. Webmaster Tools

一个对网站拥有者来说非常有用的程序,可以帮助你从各个角度改善自己的站点。可以发现站点中的恶意程序,发现搜索引擎爬虫遇到的错误,可以发现你的 HTML代码中需要改进的部分。还可以帮你发现你的站点中最热门的网页,并发现你站点中的错误链接。
3. Google Web Toolkit

Google Web Tootlkit (GWT)是一个Web开发基础框架,为开发者提供了一些基础类库,GWT同Google的其它产品,如 AdWords,FeedBurner,Google Ajax类库等紧密集成,这里有一个Google Docs教程。
4. Google Code Search

帮助开发者搜索代码,支持正则表达式搜索,或在一个高级搜索界面中,很直观地搜索那些可能会让你事半功倍的公共代码。
5.Page Speed

Google现在已经将网站加载速度算到搜索排名算法中,Page Speed可以帮助你分析你的网站性能,基于Google Web性能最佳实践。
6. Browser Size

该工具帮你分析,你的网页在不同浏览器,不同浏览尺寸下的显示状况,非常适合看看自己的网页在不滚动的情况下,在各种浏览尺寸下显示到哪里。
7. Google Ajax Libraries API

Google Ajax Libraries API包含多种流行的JavaScript库(目前有10种),并可以从Google高性能的CDN网络中加载,既节省了你的服务器带宽,同时,由于用户 可能已经在别的网站加载过这个库,因此可以显著加快这些库的加载速度。
8. Google Website Optimizer

接着这个工具,你可以对自己的网站进行 A/B 测试,并对网站进行优化。
9. Sites

顾名思义,Google Sites可以帮你创建一个托管的网站,可以将包括 YouTube,幻灯,Gmail日历,Google Gear小程序,Google Docs一类的应用集成其中。如果将站点设置为不公开,你可以将这个工具用于个人文档工具。
10. Speed Tracer

以可视化方式,帮你分析你的Web程序中各种元素的加载或运行速度与实践,这里有一些关于这个工具的用例。
11. Project Hosting

这是Google Code项目的一部分,可以帮你托管你的开源项目,Web开发与设计者还可以在这里找到大量现成的项目以供借鉴或套用。
12. Google App Engine

这是一个可用来托管自己的Web程序的地方,甚至可以使用自己的域名。这里有一个教程,讲解如何使用Google App Engine来创建一个留言本。Google App Engine中已经托管了大量的Web程序。
13. Google Chart Tools

Google Chart Tools可以帮助你将数据转化为图表,并嵌入自己的网页,这些图表还拥有交互功能,可以钻入,或通过鼠标盘旋获取详细信息,还可以实现动画图表。
14. Closure Tools

Closure Tools是Google Labs的一个开发套件,包含3个工具,闭包编译器(一个JavaScript优化器),闭包函数库(用于Ajax程序开发)以及一个用于动态生成 HTML的闭包模板。
15. Google Analytics

经典的Google流量分析统计工具。
1. Google Chrome Developer Tools
这是Google Chrome中类似 Firefox Firebug以及Web Developer Toolbar的一个扩展,用于调试你的网页,包含一个DOM探测器,一个JavaScript调试台,可以设置执行断点和跟踪,一个类似YSlow的执 行分析器。
2. Webmaster Tools
一个对网站拥有者来说非常有用的程序,可以帮助你从各个角度改善自己的站点。可以发现站点中的恶意程序,发现搜索引擎爬虫遇到的错误,可以发现你的 HTML代码中需要改进的部分。还可以帮你发现你的站点中最热门的网页,并发现你站点中的错误链接。
3. Google Web Toolkit
Google Web Tootlkit (GWT)是一个Web开发基础框架,为开发者提供了一些基础类库,GWT同Google的其它产品,如 AdWords,FeedBurner,Google Ajax类库等紧密集成,这里有一个Google Docs教程。
4. Google Code Search
帮助开发者搜索代码,支持正则表达式搜索,或在一个高级搜索界面中,很直观地搜索那些可能会让你事半功倍的公共代码。
5.Page Speed
Google现在已经将网站加载速度算到搜索排名算法中,Page Speed可以帮助你分析你的网站性能,基于Google Web性能最佳实践。
6. Browser Size
该工具帮你分析,你的网页在不同浏览器,不同浏览尺寸下的显示状况,非常适合看看自己的网页在不滚动的情况下,在各种浏览尺寸下显示到哪里。
7. Google Ajax Libraries API
Google Ajax Libraries API包含多种流行的JavaScript库(目前有10种),并可以从Google高性能的CDN网络中加载,既节省了你的服务器带宽,同时,由于用户 可能已经在别的网站加载过这个库,因此可以显著加快这些库的加载速度。
8. Google Website Optimizer
接着这个工具,你可以对自己的网站进行 A/B 测试,并对网站进行优化。
9. Sites
顾名思义,Google Sites可以帮你创建一个托管的网站,可以将包括 YouTube,幻灯,Gmail日历,Google Gear小程序,Google Docs一类的应用集成其中。如果将站点设置为不公开,你可以将这个工具用于个人文档工具。
10. Speed Tracer
以可视化方式,帮你分析你的Web程序中各种元素的加载或运行速度与实践,这里有一些关于这个工具的用例。
11. Project Hosting
这是Google Code项目的一部分,可以帮你托管你的开源项目,Web开发与设计者还可以在这里找到大量现成的项目以供借鉴或套用。
12. Google App Engine
这是一个可用来托管自己的Web程序的地方,甚至可以使用自己的域名。这里有一个教程,讲解如何使用Google App Engine来创建一个留言本。Google App Engine中已经托管了大量的Web程序。
13. Google Chart Tools
Google Chart Tools可以帮助你将数据转化为图表,并嵌入自己的网页,这些图表还拥有交互功能,可以钻入,或通过鼠标盘旋获取详细信息,还可以实现动画图表。
14. Closure Tools
Closure Tools是Google Labs的一个开发套件,包含3个工具,闭包编译器(一个JavaScript优化器),闭包函数库(用于Ajax程序开发)以及一个用于动态生成 HTML的闭包模板。
15. Google Analytics
经典的Google流量分析统计工具。
20
May
我这两天在工作中遇到了一些问题,在今天下午全部解决,于是决定写一篇文章,将实现方法记录下来:
一、背景环境:
1、都是Linux服务器;
2、“服务器A”与“服务器C”不在同一网络,两者之间是不通的;
3、“服务器A”、“服务器C”分别与“服务器B”相通。
二、要实现的需求:
1、让“服务器A”上的PHP程序能够连接“服务器C”上的MySQL数据库(IP:10.10.1.4,端口:3306);
2、不允许在“服务器A”上的PHP程序中更改MySQL地址(10.10.1.4)和MySQL端口(3306)。
三、实现原理:
理论上从“服务器A”是无法直接连接“服务器C”的IP地址(10.10.1.4)及其3306端口的【图中的虚线】,但通过“IP别名+TCP转发+端口映射”,我在“服务器A”上的PHP程序无须作任何修改的情况下实现了这项功能【图中的实线】。
访问路线:“服务器A”上的PHP程序─→虚拟10.10.1.4:3306─→192.168.1.3:8520─→真实10.10.1.4:3306

四、实现方法:
1、修改“服务器A”上的Apache配置文件httpd.conf(以下仅列出要修改的部分,其余部分用......表示):
然后重启Apache:
/usr/local/apache/bin/httpd -k restart
2、在“服务器A”上创建本地回环设备lo(即127.0.0.1)的IP别名10.10.1.4,即虚拟IP:
『图中的①』
/sbin/ifconfig lo:0 10.10.1.4 broadcast 10.10.1.4 netmask 255.255.255.255 up
/sbin/route add -host 10.10.1.4 dev lo:0
3、在“服务器A”上编译安装TCP转发软件rinetd(官方网站:http://www.boutell.com/rinetd/),将对10.10.1.4:80的TCP请求重定向到192.168.1.3:8520上:
『图中的②』
wget http://www.boutell.com/rinetd/http/rinetd.tar.gz
tar zxvf rinetd.tar.gz
cd rinetd
make && make install
vi /etc/rinetd.conf
输入以下内容(格式:源地址 源端口 目标地址 目标端口):
10.10.1.4 80 192.168.1.3 8520
启动rinetd守护进程
/usr/sbin/rinetd -c /etc/rinetd.conf
4、在“服务器B”上利用iptables配置端口映射,将自身的8520端口映射到10.10.1.4的3306端口上:
『图中的③』
echo "1"> /proc/sys/net/ipv4/ip_forward
/sbin/iptables -t nat -A PREROUTING -p tcp -s 192.168.1.0/24 -d 192.168.1.3 --dport 8520 -j DNAT --to-destination 10.10.1.4:3306
/sbin/iptables -t nat -A POSTROUTING -p tcp -s 192.168.1.0/24 -d 10.10.1.4 --dport 3306 -j SNAT --to-source 10.10.1.3
为了防止服务器重启导致TCP转发失效,请:
vi /etc/rc.local
增加一行:
echo "1"> /proc/sys/net/ipv4/ip_forward
或者:
vi /etc/sysctl.conf
增加一行:
net.ipv4.ip_forward = 1
使其生效:/sbin/sysctl -p
文章来源:http://blog.s135.com/post/286/
一、背景环境:
1、都是Linux服务器;
2、“服务器A”与“服务器C”不在同一网络,两者之间是不通的;
3、“服务器A”、“服务器C”分别与“服务器B”相通。
二、要实现的需求:
1、让“服务器A”上的PHP程序能够连接“服务器C”上的MySQL数据库(IP:10.10.1.4,端口:3306);
2、不允许在“服务器A”上的PHP程序中更改MySQL地址(10.10.1.4)和MySQL端口(3306)。
三、实现原理:
理论上从“服务器A”是无法直接连接“服务器C”的IP地址(10.10.1.4)及其3306端口的【图中的虚线】,但通过“IP别名+TCP转发+端口映射”,我在“服务器A”上的PHP程序无须作任何修改的情况下实现了这项功能【图中的实线】。
访问路线:“服务器A”上的PHP程序─→虚拟10.10.1.4:3306─→192.168.1.3:8520─→真实10.10.1.4:3306
四、实现方法:
1、修改“服务器A”上的Apache配置文件httpd.conf(以下仅列出要修改的部分,其余部分用......表示):
引用
................
Listen 192.168.1.2:80
................
NameVirtualHost 192.168.1.2:80
<VirtualHost 192.168.1.2:80>
................
Listen 192.168.1.2:80
................
NameVirtualHost 192.168.1.2:80
<VirtualHost 192.168.1.2:80>
................
然后重启Apache:
/usr/local/apache/bin/httpd -k restart
2、在“服务器A”上创建本地回环设备lo(即127.0.0.1)的IP别名10.10.1.4,即虚拟IP:
『图中的①』
/sbin/ifconfig lo:0 10.10.1.4 broadcast 10.10.1.4 netmask 255.255.255.255 up
/sbin/route add -host 10.10.1.4 dev lo:0
3、在“服务器A”上编译安装TCP转发软件rinetd(官方网站:http://www.boutell.com/rinetd/),将对10.10.1.4:80的TCP请求重定向到192.168.1.3:8520上:
『图中的②』
wget http://www.boutell.com/rinetd/http/rinetd.tar.gz
tar zxvf rinetd.tar.gz
cd rinetd
make && make install
vi /etc/rinetd.conf
输入以下内容(格式:源地址 源端口 目标地址 目标端口):
10.10.1.4 80 192.168.1.3 8520
启动rinetd守护进程
/usr/sbin/rinetd -c /etc/rinetd.conf
4、在“服务器B”上利用iptables配置端口映射,将自身的8520端口映射到10.10.1.4的3306端口上:
『图中的③』
echo "1"> /proc/sys/net/ipv4/ip_forward
/sbin/iptables -t nat -A PREROUTING -p tcp -s 192.168.1.0/24 -d 192.168.1.3 --dport 8520 -j DNAT --to-destination 10.10.1.4:3306
/sbin/iptables -t nat -A POSTROUTING -p tcp -s 192.168.1.0/24 -d 10.10.1.4 --dport 3306 -j SNAT --to-source 10.10.1.3
为了防止服务器重启导致TCP转发失效,请:
vi /etc/rc.local
增加一行:
echo "1"> /proc/sys/net/ipv4/ip_forward
或者:
vi /etc/sysctl.conf
增加一行:
net.ipv4.ip_forward = 1
使其生效:/sbin/sysctl -p
文章来源:http://blog.s135.com/post/286/
20
May
一、搭建时间同步服务器
1、编译安装ntp server
wget http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2.6.tar.gz
tar zxvf ntp-4.2.6.tar.gz
cd ntp-4.2.6
./configure --prefix=/usr/local/ntp --enable-all-clocks --enable-parse-clocks
make && make install
注:如以上下载地址无法访问,请从ntp官方下载网页(http://www.ntp.org/downloads.html)寻找下载地址。
2、修改ntp.conf配置文件
vi /etc/ntp.conf
①、第一种配置:允许任何IP的客户机都可以进行时间同步
将“restrict default kod nomodify notrap nopeer noquery”这行修改成:
restrict default nomodify
配置文件示例:/etc/ntp.conf
②、第二种配置:只允许192.168.18.***网段的客户机进行时间同步
在restrict default nomodify notrap noquery(表示默认拒绝所有IP的时间同步)之后增加一行:
restrict 192.168.18.0 mask 255.255.255.0 nomodify
配置文件示例:/etc/ntp.conf
3、以守护进程启动ntpd
/usr/local/ntp/bin/ntpd -c /etc/ntp.conf -p /tmp/ntpd.pid
4、ntpd启动后,客户机要等几分钟再与其进行时间同步,否则会提示“no server suitable for synchronization found”错误。
二、配置时间同步客户机
vi /var/spool/cron/root
增加一行,在每天的5点13分、9点13分、14点13分、19点13分与时间同步服务器进行同步
13 5,9,14,19 * * * /usr/sbin/ntpdate 192.168.18.2
备注:如果客户机没有ntpdate,可以下载ntpdate.tar.gz到/usr/sbin/目录,然后解压:
wget http://blog.s135.com/attachment/200708/ntdate.tar.gz
cd /usr/sbin/
tar zxvf ntpdate.tar.gz
文章来源:http://blog.s135.com/post/281/
1、编译安装ntp server
wget http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2.6.tar.gz
tar zxvf ntp-4.2.6.tar.gz
cd ntp-4.2.6
./configure --prefix=/usr/local/ntp --enable-all-clocks --enable-parse-clocks
make && make install
注:如以上下载地址无法访问,请从ntp官方下载网页(http://www.ntp.org/downloads.html)寻找下载地址。
2、修改ntp.conf配置文件
vi /etc/ntp.conf
①、第一种配置:允许任何IP的客户机都可以进行时间同步
将“restrict default kod nomodify notrap nopeer noquery”这行修改成:
restrict default nomodify
配置文件示例:/etc/ntp.conf
②、第二种配置:只允许192.168.18.***网段的客户机进行时间同步
在restrict default nomodify notrap noquery(表示默认拒绝所有IP的时间同步)之后增加一行:
restrict 192.168.18.0 mask 255.255.255.0 nomodify
配置文件示例:/etc/ntp.conf
3、以守护进程启动ntpd
/usr/local/ntp/bin/ntpd -c /etc/ntp.conf -p /tmp/ntpd.pid
4、ntpd启动后,客户机要等几分钟再与其进行时间同步,否则会提示“no server suitable for synchronization found”错误。
二、配置时间同步客户机
vi /var/spool/cron/root
增加一行,在每天的5点13分、9点13分、14点13分、19点13分与时间同步服务器进行同步
13 5,9,14,19 * * * /usr/sbin/ntpdate 192.168.18.2
备注:如果客户机没有ntpdate,可以下载ntpdate.tar.gz到/usr/sbin/目录,然后解压:
wget http://blog.s135.com/attachment/200708/ntdate.tar.gz
cd /usr/sbin/
tar zxvf ntpdate.tar.gz
文章来源:http://blog.s135.com/post/281/









