9

VPS 学习笔记 - Debian WEB服务器架设篇

   Posted by: 等待一生   in Web Server

昨天购买了一款Linux VPS,不过像我这样用了十多年Windows的老用户来说,Linux简直是一款混蛋系统。。。但无奈,现在很多廉价VPS都是Linux系统,哎。重新学习吧。必须找一些简单的学习资料,开始当然是学习如何安装VPS拉。。。

这篇学习笔记大都是抄来的,理由很充分~~~我一窍不通~~~主要参考了Anqun论坛和Ujj的Linux服务器学习笔记~同时在我不断骚扰下,UJJ帮了我N多~目前就是FTP用户设定每搞懂。不过还是谢谢UJJ拉~~~

image

记在笔记之前的一些感想:

其实Linux和Win服务器没什么大区别,并不像某些人所说的,Linux有多少了不起,真正技术好的,玩什么系统都一样。Linux的系统命令偏多,而且深入后,人也会有所改变,思维模式可以说是由图形化转为了数字逻辑化,这实在是一个可怕又可悲的结果。不过这正好与我多年来致力研究的项目有关,我一直认为当社会过多的参入复杂技术时,反而会拖延社会的发展。因为人们会为了一些非必要的技术而忽略了更多细节。

Linux让用户分担了过多的技术知识,用户为了使用Linux,需要查看大量相关的技术文档。而Windows则承担了大部分技术问题,只要你识字即可,Windows使得电脑进入千家万户,也使得互联网得到了快速的发展。Windows使我们更多的时间去干别的,办公、策划、开会、做作业、聊天、游戏等等,这恰恰是很多人需要的,有多少人会想要那些该死命令和代码呢?如果Linux再方便点,相信如今网络会更发达。

好了,废话不多说,开始转载和记录:

第一步 把自己的VPS系统切换成Debian系统(据说Debian 4.0目前是BUG最少最稳定的系统之一,虽然功能没有CentOS强大,但够用了):

1.0 打开HyperVM控制面板 管理VPS,成功登陆后;

1.1.0 选择Rebuild

image

1.1.1 选择VPS操作系统为Debian 并勾选 “Confirm Rebuild”.然后点击“Update”按钮完成系统重新安装.

image

【提示】每隔10分钟可以重新安装一次.

1.2.0 OK让我们登陆VPS服务器.使用PuTTY工具登陆我们的VPS.

打开PuTTY输入服务器IP地址.端口,ssh连接方式选择.然后点击“open”按钮登陆服务器

image

首次连接出现交换密匙提示 点击是(OK).

image

接着出现登陆界面 输入用户名和密码 (小技巧:密码先复制下来.在输入密码的地方右击即可.免去手工输入的烦恼)

image

给一个 Linux系统信息查看命令大全参考(不看也没有关系.)

http://tech.idv2.com/2008/01/11/linux-sysinfo-cmds/

退出服务器的指令 exit

输入exit  回车即可断开连接.

ok 登陆后.让我开始安装WEB环境把.

2.0 安装前更新下Debian服务器.

使用命令

apt-get update

image

2.1.0 开始安装MYSQL5.0

输入命令

apt-get install mysql-server mysql-client

中途出现 “Do you want to continue [Y/n]?”

输入 y  回车继续安装

2.1.1 查看MYSQL是否工作.

输入命令

netstat -tap | grep mysql

2.1.2 设置MySql 管理员(root)密码

命令

mysqladmin -u root password 你的密码
如果想把root 密码设置为 anqun 则这样书写
mysqladmin -u root password 1234

2.1.3 使用ROOT帐户登陆MYSQL.

命令

mysql -u root –p

提示输入密码.回车即可成功登陆MYSQL.

image

MySQL安装成功后我们开始安装WWW服务器Lighttpd

2.2.0 安装Lighttpd

安装命令

apt-get install lighttpd

image

这时打开你的独立IP地址 就可以看见欢迎页面了.安装成功!

image

lighttpd默认网页文件夹

/var/www

lighttpd配置文件

/etc/lighttpd/lighttpd.conf

OK Lighttpd 既然安装成功后 我们就安装PHP让 Lighttpd支持PHP!

2.2.1 安装PHP.

命令

apt-get install php5-cgi

image

2.2.2 让Lighttpd支持PHP

我们要修改2个文件

    1. /etc/php5/cgi/php.ini
    2. /etc/lighttpd/lighttpd.conf

修改方法通常使用VI指令..但是我不会用..还好HyperVM控制面板给我们提够了在线系统文件管理.

回到HyperVM控制面板 点击"File Manager"进入在线文件管理.

image

我们先找到/etc/php5/cgi/php.ini

打开他转到edit编辑状态.

在最后一行插入

cgi.fix_pathinfo = 1

注:在此代码后,一定要再空出一行!

然后保存

image

接着用同样的方法编辑/etc/lighttpd/lighttpd.conf

[...]
server.modules = (
"mod_access",
"mod_alias",
"mod_accesslog",
"mod_fastcgi",
# "mod_rewrite",
# "mod_redirect",
# "mod_status",
# "mod_evhost",
# "mod_compress",
# "mod_usertrack",
# "mod_rrdtool",
# "mod_webdav",
# "mod_expire",
# "mod_flv_streaming",
# "mod_evasive"
)
[...]

增加代码:

"mod_fastcgi",

注意逗号.

接着在文件最后增加

fastcgi.server = ( ".php" => ((
"bin-path" => "/usr/bin/php5-cgi",
"socket" => "/tmp/php.socket"
)))

保存即可完成Lighttpd 与PHP的关联.

重新启动lighttpd

/etc/init.d/lighttpd restart

2.2.3 测试PHP.

我们使用iProber探针测试环境.

同样使用HyperVM控制面板"File Manager上传iProber.php到 /var/www

iProber探针下载

image

然后我们打开 http://67.205.151.24/iProber.php

image

看到该页面代表PHP运行成功..........

2.3 让PHP支持MYSQL.

很激动吧!PHP装好了吧....

不过突然发现探针上面

出现MYSQL不支持!!!!

image

image

啊!原来还有一步没有做呢!那好吧~让我们的php与mysql相处吧!

获得MySQL在PHP中的支持,我们可以安装php5 - MySQL的方案。这是一个很好的主意,需要安装一些其他php5模块,以及允许他们为您的应用程序。您可以搜索那些可用的php5模块使用这个命令:

apt-cache search php5

image

这时我们看到了php5-mysql这个模块,但是为了保证服务器对大部分程序的支援,我们还需要安装其他需要的模块,如php5-curl php5-gd php-pear等等。我们使用命令:

apt-get install php-pear php5-curl php5-dev php5-gd php5-idn php5-imagick php5-imap php5-mcrypt php5-memcache php5-mhash php5-ming php5-mysql php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-suhosin php5-tidy php5-xmlrpc php5-xsl

注:php5-suhosin模块就是前面提到的安全防护系统,它有两种安装方式,这里是用模块安装的方法相当于给PHP5进行打补丁。后面我会提到用第三方扩展的形式进行安装的。

重启我们的Lighttpd

/etc/init.d/lighttpd restart

现在再打开探针地址,是不是连接成功了?

3.0 安装Zend

安装Zend,我们需要登录到Zend的官方网站下载,下载需要用户名,我们可以注册一个,当然这是免费的,然后下载对应版本,然后上传到服务器Root用户目录/root

安装过程如下:

wget http://www.silentstreet.net/blog/uploads/2009/04/ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz
tar -zxf ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz
cd ZendOptimizer-3.3.3-linux-glibc23-i386
sh install.sh

安装的时候会给你看相关说明,并且会让你同意其条款,这些我们不管,我们需要注意的是后面它会让你输入目前php.ini所在目录,这里我们输入/etc/php5/cgi,然后会问你是否使用Apache Web Server,因为我们选择了Lighttpd,所以这里我们选否,然后安装结束,系统会告诉你之前的php.ini已经备份为php.ini.bak,新的php.ini文件所在目录为/usr/local/Zend/etc/,以后如果要修改php的设置,就需要进入/usr/local/Zend/etc/这个目录修改php.ini。

然后输入:

cd ..
rm -rf ZendOptimizer-3.3.3-linux-glibc23-i386.tar.gz ZendOptimizer-3.3.3-linux-glibc23-i386

删除之前的安装文件

4.0 安装suhosin

前面我们说过suhosin有两种方法,上面那个是以补丁包的方式进行安装,这里我们将它以第三方扩展的形式进行安装。安装过程如下:

wget http://download.suhosin.org/suhosin-0.9.27.tgz
tar -zxf suhosin-0.9.27.tgz
cd suhosin-0.9.27
phpize
./configure
make&&make install
cd ..
rm -rf suhosin-0.9.27.tgz suhosin-0.9.27

然后我们再在/usr/local/Zend/etc/php.ini文件中添加

[Suhosin]
extension=suhosin.so

suhosin的默认配置已经足够满足大部分人的需求了,如果需要增强设置,可以在php.ini文件中添加相应的值。详情请登录http://www.hardened-php.net/suhosin/#using_suhosin

5.0 安装Ftp服务端软件

作为服务器,必不可少需要安装FTP服务器端软件。Linux下有很多出色的Ftpd软件,我们这里选用vsftpd,短小精悍,足够满足我们的需求。使用命令:

apt-get install vsftpd

安装完成之后,默认的配置文件所在为/etc/vsftpd.conf

启动 vsftpd:

/etc/init.d/vsftpd start

以下命令建立FTP帐户及相应目录:

useradd FTP帐户 -d /home/你要的目录名 -s /bin/nologin

比如我要在 123目录建立一个 456用户,那命令应该是:

useradd 456 -d /home/123 -s /bin/nologin

-s /bin/nologin则表示禁止SSH登陆,去掉则可以使用SSH

使用“passwd 用户名”设定用户密码

passwd 用户名

会出现密码提示,输入密码即可

6.0 安装phpmyadmin

apt-get install phpmyadmin

安装好之后,如果出现在/usr/share/目录,就输入以下

mv /usr/share/phpmyadmin /var/www/phpmyadmin

移动个目录

安装成功后,可以直接登陆

http://你的独立IP/phpmyadmin

Related posts:

  1. Debian安装Apache2+MySQL5+PHP5
  2. Debian安装Xcache、eaccelerator
  3. Godaddy 虚拟主机安装Zend 3.3升级php5.ini
  4. Ubuntu 9.10安装Apache 2 + PHP 5 + MySQL 5.1 (Linode篇)
  5. 这几天关于VPS设置的进展
  6. Debian实现高负载WEB动态页面与静态页面的分离
  7. Debian Apache2.2配置FastCGI(fcgid)
  8. Linux VPS安装AMP (Apache+MySQL+PHP)
  9. Ubuntu 9.10 安装PHP-ACP、Memcached优化组件
  10. MySQL 移除 mysql-ndb、mysql-ndb-mgm 服务

Tags: , , ,

发表评论之余,您还可以到寂静街论坛与我们一起讨论您的观点哦。

This entry was posted on 星期四, 四月 9th, 2009 at 2:37 下午 and is filed under Web Server. You can follow any responses to this entry through the RSS 2.0 feed.You can leave a response, or trackback from your own site.

2 comments so far

 1 

我个人不是很赞同你的那个“记在笔记之前的一些感想:”原因是:
1,Linux和Win服务器区别很大。两个根本不是同一个东西,实现的原理也不一样,不能放在一起比较。
2,技术好的,也要分是在哪一个平台上面的技术。对于大多数技术员而言,了解win的不一定了解linux,而大多数精通linux的技术员都了解windows,就和你一样。
3,由于面向对象的不同,导致需要用户掌握的知识储备也不一样。在你的观点中,已经默认把所有的用户全部定义为:普通的电脑初级用户。对于linux而言,主要面向服务器领域(虽然现在也在想桌面发展,但还是撼不动MS这棵大树),要求技术员掌握相关技术无可厚非;对于windows而言,面向的是桌面,当然要简单才行!
要知道,世界上绝大多数的服务器都是运行在各种发行版的linux下面。前一段时间,在上海超算中心部署的大型服务器,采用了windows,结果是MS的高级官员都到场指挥,原因是windows从来没有在这么大服务器上面部署过,他们的高级官员都说:这对MS来说是新的机遇可见windows在服务器市场上的劣势。但是反观linux,在部署服务器时,你什么时候见到过基金会的高管到场指挥?

[回复]

等待一生 回复:

如果你仔细同时使用win和linux,会发现共同点是很多的,而且同样是unix演变而来。当然,个人有个人的观点。linux的诞生时间并不比微软早多少,之所以会败给微软,是因为他的单板、保守,却又杂乱无章的开发,对于市场来说,开源系统缺少了一些共同点,以至于各个版本看似差异极大,就想使用了debian后,要习惯其他linux,可能还要重头去学习。这就是为什么会linux的人会windows,而会windows的人不一定会linux,也是windows打败linux的主因,这点我想不会有多少人反对我。而服务器市场,linux虽说和win一样都需要技术,但由于linux免费,所以成本考虑,很多供应商都只能使用linux,你可以看看中国及一些不发展中国家的服务商,由于没有版权法律限制,所以肆无忌惮的使用win,win的服务器往往要比linux低,因为技术成本相对少很多,而且服务器硬件成本几乎都是一样的,如果没有版权和价格问题存在的话,linux还会有多大市场呢?
对了,至于超级计算机,使用linux还有个最大的问题就是,win的定制价格及版权对于很多公司来说,无疑是天文数字。

[回复]

伍少爷 回复:

关于你说的发行版众多的问题,我认为这只是一个表面现象。虽然linux有众多的发行版,但是适用范围较广的也只有那么几家,并且他们在开发时都会互相参考,不会出现一个很另类的版本,并且很多命令在所有的发行版中都是一样的,所以只要熟练掌握了其中一个发行版,在切换到其他的版本时,过了最初的适用期,是完全没有问题的。而且,在不同的发行版上面,相应的软件的变化是很小的,所以这不是问题。
价格的问题,那就更不是问题了。既然有免费的,为什么不用?并且由于linux在服务器市场上成熟度远高于windows,为什么不呢?

[回复]

等待一生 回复:

电脑是用来提高工作效率的,比如一个对电脑一窍不通的人炒股票,你觉得他会用win还是linux?就是win的存在,大大方便了那些没有基础知识的用户,所以电脑才会飞速发展,才会有如今的web2.0。而服务器这方面,我认为无论是云存储还是云计算或是什么,介于服务器或者个人系统的界限会越来越模糊,技术、应用等,都是这个市场发展的必要条件,linux如今的存在,相对来说更可能会造成一种发展瓶颈。我不是说linux有错,但linux如今的趋势令很多人望而却步,也无形中增加了技术成本,这会导致市场的恶性发展。我最近用了ubuntu、debian、centos,以前用redhat,不但是命令区别,有的软件连安装目录都有区别,而且有些软件还区分系统,这可比win更让人头疼,为了一个系统,我就需要翻阅大量的文档,甚至还要去求证,有些问题还要跑遍国内外网站及论坛到处问。。。如果linux再见便点,我相信会有更多的人加入linux的行列,而且市场会更活跃。
对了,linux在服务器市场的成熟度高于windows?哪里出的报告。。。服务器市场是根据价格、环境、需求、版权等种种因素来考虑的,win2003、2008都是很棒的服务器系统,而对于像fsckVPS这样的廉价VPS来说,使用linux只不过是出于价格和版权的考虑。
有机会的话,就试试win2008吧

ns基地 回复:

俺同意你的看法俺个人还是喜欢centos 和红帽子

四月 14th, 2009 at 1:29 下午
阳光
 2 

不得不承认,博主英文水平不错。
我是玩不转。。。。
学习中。。。。

[回复]

等待一生 回复:

我也与也很差,主要是通过骚扰他人和自我翻译。。。尤其以骚扰他人为主~哈哈

[回复]

四月 14th, 2009 at 9:46 下午

Leave a reply

Name (*)
Mail (will not be published) (*)
URI
Comment