所有伟大的站点背后都有一个伟大的服务器。  在这篇指南里,我会告诉你如何搭建一个专用的服务器(包括Apache,MySql,和PHP), 使用那台在屋子里无所事事的旧电脑和一些免费的软件。
快速概览
在这篇指南里, 我们的目标是要完成几件事:
•我们将会安装Ubuntu Server版操作系统。我通常使用Ubuntu,因为它易于使用,管理简单。在其背后还有一个相当大且极其活跃的社区,使你轻松的得到支持。
•我们将会安装一个 OpenSSH 服务。它允许你从远程计算机管理你的服务器。
•会安装一个LAMP (Linux, Apache, MySQL, 和 PHP) 架构。这是运行你web站点的“骨架”支持。Apache是基于Unix操作系统web服务器的行业标准; 它是被大多数web主机使用的(NETTUTS现在就是用的它),并且现在我们也会去用它。
•我们会安装一个防火墙来保护你的服务器,阻止那些未授权的访问。
为了跟随本教程,你需要以下一些东西:
•一个用作服务器的电脑。它不需要很强大, 也不需要太古老,可以工作就好。请不要在你的桌面PC上做这些;Ubuntu会彻底清除你的电脑。
•一个CD刻录机和一张空白的CD。是为了便于你刻录一张Ubuntu的安装盘。
•时间。 严重的说,这个过程是很费时的,尤其是你遇到问题的时候。尽力腾出一个下午的功夫来跟随这个教程去做。
你可能会问,为什么你想有你自己的web服务器。有多个原因,其中一些是:你可以为你自己的网站提供一个试验场;一个小的修改,你就可以host你自己的站点;并且,当你做这些的时候你会学到很多关于Linux/Unix的东西。下面让我们开始吧!
下载Ubuntu Server版
首先,我们需要一张有Ubuntu的CD。把你的浏览器指向 www.ubuntu/, 点击左边菜单里的 download 。现在你会看到有两标签的一个框 :  "Desktop Edition" 和 "Server Edit
ion"。点击"Server Edition" 标签, 选择 "Ubuntu 8.04 LTS"。 下一步,从下拉列表框里选一个下载地点。最好点击 "Begin Download" 按钮。
现在你需要刻录一个ISO到你准备的空白CD上。如果你不知道如何去做,这有个优秀的教程help.ubuntu/community/BurningIsoHowto
安装 Ubuntu Server
现在你已经下载好了,并且刻好了ISO, 让我们把Ubuntu装在你的服务器上吧。 把这张盘放到磁盘驱动器里,然后从光盘启动。大多数现代的电脑,如果一张盘在磁盘驱动器里,当你打开它的时候都会默认从光盘启动。如果没有的话,在你启动电脑的时候,需要按一个键。例如我的笔记本,它是F12, 我的服务器是F2。这些取决于你的电脑了。你也可以在启动电脑BIOS期间出现在屏幕上的文字来到它。你会看到一些像 "Press [KEY] to change boot order"这样的话。按这个键,选择CD drive。
Still with me? Good. Now that you've booted up Ubuntu, you should see the following screen:
选择你的语言,点击回车。现在你会看到下面这个屏幕:
选择 "Install Ubuntu Server", 我们出发吧!
安装程序会问你是否想要检测你的键盘布局。 就我个人而言, 我总是选no,因为从列表里选一个标准的美国键盘比安装程序选择它来得快。其他选项是好的,只需要按屏幕的指示来。
当你做完这些以后, 你会看到屏幕上一堆loading信息,像"Detecting CD-ROM drives" 诸如此类的。这些应该毫无问题的快速通过。 然而,就在这个期间,安装程序会尝试自动配置你的网络设置。大多数情况下,不会有问题。但是 ,如果它不为你工作了,只需要按照屏幕上的指示来让它工作。
完成这一切以后, 它会问你主机名称。你通常可以设置为任意值,我总是设置我的叫“web-server”。
系统现在会让你设置时区。对我来说,是Pacific. 选择一个适用于你的。
现在,系统会检测更多的硬件,并且你会被提示"partion the disk(s)(磁盘分区)". 选择 "Guided - use entire disk(引导 - 适用整个磁盘)".
你现在选择你需要分区的磁盘。对于大多数的安装,仅有一个磁盘可用,但是,对于大多数更专有的系统,这里有更多可用的选择。选择一个适用于你的。
它会问你是否你想把改变写入到磁盘。选择 "Yes" 然后回车。安装程序现在会格式化你的驱动器设立分区。
现在魔力爆发了。系统开始安装。当这一切发生的时候,去泡杯咖啡吧。这会花费一些时间,10分钟到一个小时不等, 这取决于你的系统。可能会有多次卡在那里,不要着急,没什么,只需要让它去做该做的。但是如果它在一件事上停留超过一小时,那么完了, 它死机了。
现在系统装好了,你需要设置一个用以登陆的帐号。首先,输入你的全名,并且点击 "Continue"。
现在输入用户名。它通常会设置为你的first name(按老外的名字),但是你可以改变它。一
个名字你不要去用,"root"。
你现在会被要求提供一个密码。选择一个strong(译者注:复杂,长的,难以被破解的)密码是至关重要的,否则你的服务器根本不会安全。我建议至少是数字,小写字母和大写字母的混合。但是,对于我自己的服务器,我用符号,和上面的混合物一样好。不要用少于7个字符的密码。
然后,重新输入一遍你的密码来验证你输入的是否正确。
系统现在会试图配置 "Package Manager" (we'll get to what that is shortly). 提供你的代理信息,如果你不用代理就留空,然后选择"Continue"。
系统现在会扫描多个服务器寻更新和配置。
完成这个以后,你会看到几个安装服务器软件的选项。现在,请仔细听。选择 Select OpenSSH server, 按 SPACE(空格), 不是回车。如果你按了回车,OpenSSH server就不会被安装。你也可以安装 "LAMP server" ,但是我没有这方面的经验,所以会用不同的命令去安装它们。
系统现在会安装你选择的软件,以及其他系统组件。
最后,安装完成。取出CD盘,点击回车。电脑会重启。如果一切正常,你会看到如下画面:
恭喜你,你已经完成了最难的部分。Ubuntu现在装好了,现在是把你的电脑变成web服务器的时候了。
更新你的新服务器
在我们更进一步之前,我们需要确保你的服务器是最新的。要做到这一点,你需要登陆。首先,输入用户名(你之前选的那个),按回车,输入密码。当你输入密码的时候,你会注意到什么事情都没有发生。不要着急,这就是它的工作方式。在你输完你的密码之后,按回车,如果一切正常,你的屏幕会出现如下画面:
现在,输入:
sudo aptitude update && sudo aptitude dist-upgrade它会询问你密码,同样,你不会看到你
输入的任何东西。完成这个以后,它会问你是否想继续。输入“y”,按回车。你的屏幕会如下显示:
你的系统现在开始下载并安装最新的更新。这一步花费的时间取决于你的互联网链接。完成这个以后,你的电脑需要重启。为了做到这一点,输入:
sudo shutdown -r now让它重启。你的服务器现在完全更新了。
关于"Sudo"
直到现在,你可能已经注意到了,你输入的所有命令都以sudo开始。这是因为它们需要管理员权限,这就是sudo的作用。它以管理员身份运行命令(例如“shutdown”)使其能正常工作。这也是为什么它问你要密码的原因。然而,在你输入“sudo”一次并键入密码五分钟之内,不需要再次输入你的密码。不是所有的命令都需要sudo,只是那些修改系统的部分才需要。理解了吗?  很好。
安装 Apache, MySQL, 和 PHP
现在是安装一些程序的时候了。为了从互联网访问你的站点,我们需要安装web服务器 (Apache). 除了web服务器,我们也需要安装数据库服务器 (MySQL) 和一个服务端语言 (PHP) ,以便于我们可以运行像WordPress这样的流行应用。所以,让我们来完成这些。
在Ubuntu上面安装程序不同于在Windows或OSX, 在Ubuntu上只需要一个简单命令就可以下载和安装这个程序。这是因为Ubuntu有个叫包管理(Package Manager)的东西, 它管理着你系统上所有的程序。所有我们能做的就是告诉这个包管理工具(叫做 "aptitude") 我们想让它安装 Apache, MySQL, 和 PHP。输入下面的命令来做到这一点:
sudo aptitude install apache2 php5-mysql libapache2-mod-php5 mysql-server按回车。 Aptitude 会下载和安装你指定的这些程序。它也会下载和安装任何依赖的包。
在安装期间,MySQL会问你root密码。你可以任意设置它,只要确保它是长的安全的就行。无论如何,你都不能把它留空。
所有的一切完成以后,你现在就有了一个全职的web服务器了。为了测试它,你需要输入下面命令来到你的服务器的IP:
web服务器是什么服务器
ifconfig | grep inet
它通常是返回的第一个IP。现在你知道了IP, 打开你的浏览器,输入你的IP地址。如果你看到 "It works!" 信息,那么恭喜你,它可以工作了。
然而,我们还没有做完。我们不想Apache或PHP透露任何关于它们本身的信息,因为这些信息对你的用户是无用的,并且可能会造成安全风险。首先,备份原来的Apache配置文件:
sudo cp /etc/f /etc/f.bak现在打开配置文件:
sudo nano /etc/f向下滚动(下箭头) 到写着"ServerTokens Full"的地方,改变它为 "ServerTokens Prod"
现在,再稍微向下滚动一点,修改 "ServerSignature On" 为 "ServerSignature Off"

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。