设为首页 友情链接
在线留言 发表文章
加入收藏 广告联系

刺猬首页

| 专案技术 | 网络技术 | 图形图象 | 网络编程 | 网页设计 | 操作系统 | 服务器 | 技术白皮书 | 在线实验室 | 刺猬论坛 |
小说专版  | 数据库 | 设计赏析 | 存储频道 | 网络安全 | 私服架设 |  Solaris | 网站评估 | PC维护技巧 | 下载中心 | 博 客 |
专   题: | Linux | java | cisco | 防病毒 | 刀片 | SOA | iscsi | ASP.NET | SQL | Oracle |
您现在的位置: IT公社 IT community >> Linux专题 >> 企业应用 >> 教程正文 用户登录 新用户注册
专 题 栏 目
最 新 热 门
最 新 推 荐
相 关 文 章
Debian和Gentoo包管理机…
Portland为KDE/GNOME两L…
IBM购开源Palisades 发展…
Linux手机采用InterVide…
惠普将提供对非商业Linu…
架构看点:使用Ubuntu作…
经验技巧:如何对Apache…
IBM eServer BladeCente…
访谈:GNU/Linux、Conne…
Debian下配置Samba服务器…
  Debian服务器设置入门教程之一 (1)           
Debian服务器设置入门教程之一 (1)
 

ccid_nobr> 1.选择Apache+MySQL+PHP4

    你可能会问我:为什么不选择别的软件,而非得选择Apache+MySQL+PHP4的组合?呵呵,我要告诉你,著名的FreeLamp组合,说的就是Linux/Apache/MySQL/PHP/Perl/Python,你可以到www.freelamp.com上面去看看。PHP在互联网上的应用,正成燎原之势。如果作Web开发,在我看来,别无选择,就是PHP。详细情况可以到www.php.net上面去了解。MySQL非常轻便,性能卓越。Apache就不必多说了,互联网上没有几个Web站点不用它。

2.安装

    在Debian上安装软件,真的是非常简单。不需要configure,不用make,不用make install,遍布全球的Debian的工作人员已经为你做好了一切。

    你可以一口气把这些软件全部装上:
# apt-get install apache php4 php4-gd php4-mysql mysql-server mysql-client

    其中,php-gd是一个非常棒的图形库,如果你不需要使用php生成动态图片,就不用装。

    这时,系统会自动列出一些相关的软件,然后问你是不是要继续(说Debian棒,这是其中一点:自动查找软件关联,自动补充安装)——Debian给你一次反悔的机会,如果你现在不想装了,那么按n,就退出来了。

    当然我们在这里要按回车,继续安装。现在Debian会到你的sources.list里面指定的站点去下载这些软件。下载完后,会自动进行配置,配置过程中会征求你的意见,问你几个问题。

    比如现在他就问你:你要在计算机启动时就运行MySQL吗?当然选Yes了,否则每次要用的时候才启动,怪麻烦的。

    又问你:你想运行apacheconfig脚本吗?默认是N,不过我们输入Y让它替我们配置一下。配置完后,问你是否保存配置,当然是了,呵呵。然后,他会问你是否要启动Apache,好,启动它。

    接着,系统会自动配置PHP。由于你选择了php-gd和php-mysql,他会问你是否把gd.so和mysql.so的支持写入php.ini,回答是。你看,Debian聪明吧。

3.配置

3.1 配置Apache

3.1.1 提供php支持

    Apache刚装上的时候不提供php支持。当你点击有.php脚本的连接,浏览器会下载这个脚本:-(

    修改/etc/apache/httpd.conf,以便提供php支持。运行:

#nano /etc/apache/httpd.conf

    顺便提一下,我非常喜欢这个叫做nano的编辑器,它很容易上手。使用nano的ctrl+w功能找到下面这一行:

 # LoadModule php4_module /usr/lib/apache/1.3/libphp4.so

    把这一行前面的井号去掉,以便apache加载这个libphp4.so模块。然后,配置默认页,找到:

DirectoryIndex index.html index.htm index.shtml index.cgi

    改成:

DirectoryIndex index.php index.php3 
index.html index.htm index.shtml index.cgi

    然后再加上.php3扩展名的支持和php源码支持,找到:

#
# And for PHP 4.x, use:
#
#AddType application/x-httpd-php .php
#AddType application/x-httpd-php-source .phps

    把后面两行修改成:

  #
  # And for PHP 4.x, use:
  #
  AddType application/x-httpd-php .php .php3
  AddType application/x-httpd-php-source .phps

3.1.2 修改默认字符集

    让Apache把简体中文作为默认的字符集。找到这一行:

AddDefaultCharset on

    修改成:

AddDefaultCharset gb2312

    好,Apache就配置完了,按ctrl+o保存后,再按ctrl+x退出nano。为了使我们的修改生效,需要重新启动Apache,运行:

  #apachectl restart

    apache 1.3 提供了这个apachectl工具,但是2.0就没了。

    另外,注意一个技巧:Debian提供的服务器软件包,几乎都会提供一个脚本用于启动/终止/重新启动这个服务。脚本全部放在/etc/init.d/下面。

    比如Apache,可以通过下面的命令控制:

#/etc/init.d/apache restart

    其它的服务也可以如此操作。

3.2 MySQL配置

3.2.1 修改MySQL的口令

    由于MySQL默认没有口令,为了安全起见,一定要修改你的口令!

    先来看看你的mysql是不是真的没有口令:

$mysqladmin version

    如果你能够看到mysql的版本信息,证明目前MySQL没有口令。好,运行mysqladmin password xxxxxx 修改口令:

#mysqladmin password xxxxxx

    这里xxxxxx是你的新口令。

    现在你需要运行 mysqladmin version --user=root --pass,然后输入口令,才能查看版本号等信息。

    注意,上面命令中的--user=root --pass这一部分,可以简写为-u root -p。我们来测试一下,看口令是否生效:

#mysqladmin version -u root -p
Enter password:

3.2.2 打开3306端口监听

    这项工作要慎重。处于安全考虑,默认情况下,Debian把3306端口关闭了。因为,不少黑客通过它来攻击你的系统。如果你不通过其他机器来存取数据库,那么不要打开这个端口。

    修改/etc/mysql/my.cnf,找到:

skip-networking

    把它注释掉:

#skip-networking

3.2.3 修改默认字符集

    让MySQL把简体中文作为默认的字符集。编辑/etc/init.d/mysql,找到这一行:

/usr/bin/safe_mysqld > /dev/null 2>&1 &

    改成:

  /usr/bin/safe_mysqld > --default-character-set=gb2312 > /dev/null 2>&1 &

    好,重新启动MySQL:

#/etc/init.d/mysql restart

3.3 PHP配置

    主要是要修改php的默认字符集,把它改成简体中文。编辑/etc/php4/apache/php.ini:

#nano /etc/php4/apache/php.ini

    找到 ;default_charset = "iso-8859-1"这一行:

;default_charset = "iso-8859-1"

    把前面的分号去掉,并改成:default_charset = "gb2312"

default_charset = "gb2312"

4.综合测试

    好了,安装完了,我们来测试一下。

    这一部分,高手完全可以略过。我主要考虑到初学者,才写了这些。

4.1 建立一个数据库

    下面我们来创建一个简单的数据库,这个库里面只有一张表,叫做user,用来存放用户名/明文密码/出生日期/激活状态。

<?php
      $dbname='mytest';
      $tablename='user';
      $page=0;
      $rowperpage=20;
      
      mysql_connect("localhost", "root", "您的密码");
      
      //下面这个viewData函数,是自己编的,用来显示数据
      //从某种程度上讲,本程序起关键作用的就这么一句:
      viewData($dbname,$tablename,$page,$rowperpage);
      
      
      ////////////////////////////////////////////////
      //
      // 往下仅仅是定义了两个函数而已,你可以不去看他
      //
      ////////////////////////////////////////////////
      
      
      //定义一个函数,用来返回查询状态
      function echoQueryResult() {
	global $queryStr, $errMsg;               
      
	if( $errMsg == "" ) $errMsg = "成功";
	if( $queryStr != "" ) {     
		echo "<table cellpadding=5>";
		echo "<tr><td>查询:</td><td>$queryStr</td></tr>";
		echo "<tr><td>结果:</td><td>$errMsg</td></tr>";
		echo "</table><p>";
	}
      }
 
 
       //定义一个函数,用来显示数据
      function viewData($dbname,$tablename,$page,$rowperpage) {
	global $mysqlHandle, $PHP_SELF, $errMsg,  $orderby;               
      
	echo "<h2>下面是您所查的数据:</h2>";
      
	$queryStr = stripslashes( $queryStr );
	if( $queryStr == "" ) {
		$queryStr = "SELECT * FROM $tablename";
		if( $orderby != "" )
			$queryStr .= " ORDER BY $orderby";
	}
      
	$pResult = mysql_db_query( $dbname, $queryStr ); 
	$errMsg = mysq

[1] [2] 下一页

频道声明:本频道的文章除部分特别声明禁止转载的专稿外,可以自由转载.但请务必注明出出处和原始作者 文章版权归本频道与文章作者所有.对于被频道转载文章的个人和网站,我们表示深深的谢意。

原始作者:佚名 录入时间:2007-1-2 20:32:32
信息来源:不详 投稿信箱:itqoo@126.com
教程录入:itqoo    责任编辑:itqoo 
  • 上一个教程:

  • 下一个教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)
    - 关于我们 - 合作伙伴 - 友情链接 - 广告刊登 - 投稿热线 - 在线留言版权声明联系方式 -
    IT公社版权所有 粤ICP备05127012号
    Copyrigh@2005-2006 itqoo.com.Inc All Rights Reserved  推荐分辨率 1024*768
    联系站长:E-Mail:itqoo@126.com     MSN:urchincc@hotmail.com    QQ:点击这里给我发消息
    特别感谢:亿太网络提供空间支持