在运行完美的Ubuntu桌面时,拥有自己的(Chrooted)Debian LAMP服务器
这是一个简要的说明,要介绍如何设置Debian的Webserver(Debian Sarge别名Debian 3.1),它将在Ubuntu 7.04下运行chroot。
我跟随Falkos优秀如何指导设置完美的ubuntu 7.04桌面:
https://www.youcl.com/info/4887
但是,为了让桌面更加完美,我需要添加一两件事情。 首先我会添加AVG,因为我可能会把文件和数据和其他电脑,所以我想确保我没有传递病毒,为了做到这一点,我将跟随另一个Falkos优秀的指导:
https://www.youcl.com/info/5559
然后我需要安装类似于我的ISP的Web服务器,以便我可以在将它上传到最后的休息位置之前进行测试。 我没有运行我自己的网络服务器,因为我通过ADSL连接到网络,它可能高达8M的下载,但它只得到256K上传,这是我的网站的访问者将获得,这将取决于我的流量本地交流
我希望我的网页可以充分利用我的ISP的T1连接带宽,所以我保持我的网页远程托管。
这并不意味着我不能一直测试所有的东西,所以我需要我的LAMP服务器包括:
- Apache 1.3.33(Debian GNU / Linux)
- PHP / 4.3.10-19
- mysql 4.0.24。
- phpmyadmin
这些旧版本的Apache,PHP和mysql不再可用于Ubuntu下的安装,只能安装在debian Sarge上,所以不要将其作为我的基础平台运行,我将其作为一个最小的系统安装在我的Ubuntu桌面之上,通过chroot运行Debian程序。
如果你也这样做,并且已经安装了apache或者mysql,那么你需要确保它们在安装或运行sarge apache / mysql时不运行。 这是因为如果ubuntu版本已经在监听它们,sarge apache和mysql将无法绑定到其各自的监听端口。
首先,我们必须安装debootstrap,因为我们将使用它来创建最小的系统。 然后我们可以下载并安装Debian Sarge。
打开终端窗口:
sudo bash
apt-get install debootstrap
mkdir sarge-dir
现在你应该找到最近的debian镜像,并使用它来下载并安装debian系统。 转到http://www.debian.org/mirror/list/ ,找到相应的镜像地址,然后:
debootstrap sarge sarge-dir http://ftp.uk.debian.org/debian
我正在使用英国的镜子,但你可以将英国的部分改为任何你需要的。 几分钟后,下载和安装应该已经完成,您需要:
mount -o bind /proc sarge-dir/proc
这将使proc文件系统在chroot中可用。 Proc psuedo文件系统是一个实时的内存驻留文件系统,用于跟踪计算机上运行的进程和系统的状态。
而从现在开始使用新系统就是一个简单的输入:
chroot sarge-dir
该命令可以让您进入chroot,您可以修改新安装的sarge系统中的文件。
在这一点上,如果你希望你可以跟随另一个Falkos优秀的howto指导:
https://www.youcl.com/info/4407
只需在网络部分之后启动教程。 虽然需要一些额外的工作才能正确地安装邮件服务器,在该教程中,它在启动期间安装,但这是为别人提供详细信息。
我不会这样做,因为我需要一个不同版本的apache,我不需要所有其他的东西设置。 所以我要编辑sources.list并更新文件系统。
echo deb http://ftp.uk.debian.org/debian/ sarge main > /etc/apt/sources.list
echo deb http://security.debian.org/ sarge/updates main >> /etc/apt/sources.list
apt-get update
apt-get upgrade
现在安装我需要的程序的时候
apt-get install apache php4 mysql-server phpmyadmin
启用suExec?
< - 是的
MySQL只会安装,如果你有一个NON-NUMERIC主机名...
< - 好的
您要自动重新配置哪个Web服务器?
<--- apache
你要我现在重新启动apache吗?
< - 是的
有关未配置的区域设置可能会发现一些错误消息:
perl:warning:设置区域设置失败。
perl:warning:请检查您的区域设置:
LANGUAGE =(未设置),
LC_ALL =(未设置),
LANG =“en_GB.UTF-8
被支持并安装在您的系统上。
perl:warning:回到标准区域(“C”)。
区域设置:无法将LC_CTYPE设置为默认语言环境:不存在此类文件或目录
区域设置:无法将LC_MESSAGES设置为默认语言环境:不存在此类文件或目录
区域设置:无法将LC_ALL设置为默认语言环境:不存在此类文件或目录
这可能是因为debootstrap安装方法可能没有安装区域设置。
apt-get install locales localeconf
选择要生成的区域设置。
[*] en_GB ISO-8859-1
[*] en_GB.ISO-8859-15 ISO-8859-15
[*] en_GB.UTF-8 UTF-8
< - 好的
哪个区域设置应该是系统环境中的默认值?
< - en_GB
用debconf管理区域设置配置文件?
< - 是的
如果您不希望使用默认的系统区域设置...
< - 好的
应该覆盖默认语言环境的环境设置:
< - 空白
替换现有的区域设置配置文件?
< - 是的
如果您不确定...总是支持。
< - 好的
默认系统区域设置:
< - en_GB.UTF-8 UTF-8
我现在将创建一个与目前的ubuntu相同的sarge用户。 这意味着当我在Ubuntu中编辑我的网页时,我不应该有任何权限问题。
adduser user_name_in_ubuntu
Apache配置文件仍然位于: /etc/apache/httpd.conf ,但是它是从sarge-dir引用的,同样适用于您的Web文件夹/ var / www 。 当从Ubuntu桌面编辑网页时,首先进入sarge-dir,然后找到/ var / www / 。 当在Ubuntu中编辑网页时,首先进入sarge-dir,然后找到/ var / www /
现在我会检查安装。
可以通过在/ var / www文件夹中使用phpinfo()命令创建一个phpinfo文件来一起完成apache和php安装。 目前仍然chroot。
nano /var/www/phpinfo.php
在这个文件中你应该输入:
<?php
phpinfo();
?>
将浏览器指向http://localhost/phpinfo.php ,并显示整个apache配置和默认设置。
mysql的配置文件位于: /etc/mysql/my.cnf,再次从sarge-dir引用。 在这一点上,还值得设置Root密码,仍然chroot:
mysql -u root
要让你进入mysql命令提示符,那么:
mysql> USE mysql;
mysql> UPDATE user SET Password=PASSWORD(your-password') WHERE user='root';
mysql> FLUSH PRIVILEGES;
phpmyadmin配置文件位于: /etc/phpmyadmin/config.inc.php 。
您可能希望将mysql密码添加到其中,以便在每次需要使用时保存登录到phpmyadmin控制台。
如果您需要重新启动Apache,或者如果apache在启动时没有启动,那么您需要首先将其插入到sarge中,然后重新启动apache。
sudo bash
chroot sarge-dir
/etc/init.d/httpd restart