魅力博客

魅力Linux|魅力空间|魅力博客|学习Linux|ubuntu日记|电脑教程|手机软件

构筑LAMP框架之apache



LAMP框架是当前软件开发的一种重要模式,LAMP中的L代表开源的操作系统Linux,A代表最著名的WWW服务器,也是开源软件的Apache, M代表性能优越的开源数据库软件Mysql,P代表开源的网络脚本语言PHP,也代表PerlPython,后两者也都是著名的开源软件.LAMP都是免费的自由软件,但是性能毫不输于相应的商业软件---比如说Apache强于微软的IIS这是众所周知的事实---所以在信息领域非常流行,同时有很多具体的应用系统也是构筑在LAMP框架之上.

1 Apache
的安装、配置    
   Apache
UNIX 系统中普遍使用的WWW服务器软件。根据Netcraft的统计 ([url]http://news.netcraft.com/archives/web_server_survey.html[/url]),目前因特网中,有超过百分之六十的服务器是使用Apache来提供网页浏览的服务。Apache可以说是目前世界上使用人数最多的网页服务器软件,它不仅可以在 FreeBSDUNIXLinux 中运行,也可以安装在 Windows 操作系统中。

   Apache
FreeBSD一样,在软件版本上也有多个分支,目前较稳定的版本有1.32.0Apache1.3系列开发已久,已经十分稳定了,不会再有重大的修改。而Apache2 系列是一个开发较活跃的版本,它和1.3最大的不同在于对多线程(multithreaded)的支持。目前Apache2.0.58是最主要的稳定版本,而2.2.2则还处于开发中的状态。

   
Debian上安装Apache软件非常方便,比在Windows系统上安装同类软件更为简单,我只用一行命令就搞定了:
     #apt-get install apache2
   
   
Etch中存在Apache的两个版本,Apache1apache2,前者是一个久经考验的稳定版本,目前仍然有许多的实际应用;后者则具有很多新的功能,处于与时俱进的考虑,我们上面安装的是后者,安装的版本是apache2.0.55

   
以下是一些在实际使用中常常会遇到的问题:
1)
配置文件的位置:
 
Etch中位于  /etc/apache2/apache2.conf
 
在其他版本可能位置和名称有所不同,与apache1的位置也不同。

 
/etc/apache2/下面,还有两个目录,分别是mods-availablemods-enabled,显然前者是提供的模块,后者是启动了的能正常起作用的模块。如果需要把提供的模块使起作用,需要在后者的目录下做一个前者的符号连接。

2)
缺省的主目录:
  /var/www/
 
系统安装好后,我在/var/www目录下写入了一个简单的index.html文件,只一句:
     #cat index.html
     This is a Debian server
 
然后在客户端检查是否输出正确。

3) log
文件的位置
  log
文件的作用是很大的,Apache有二个log文件,一个是所有登陆本apache服务器的记录,/var/log/httpd- access.log,文件记录了登陆的ip,时间,浏览器类型等;另一个是联机错误记录文件, /var/log/httpd-error.log,这个文件对于调试apache参数是很有作用的。两个文件都是文本文件,可以由nano等文本编辑器来浏览、编辑,记录文件的位置及文件名是由 httpd.conf中的相应配置来改变。

3)
启动、停止和重新启动httpd服务器的运行:
  apapche2ctl start(stop restart)
   
这个命令比较有用,尤其是在修改配置文件之后。

4)
个人用户目录的问题:不同于apache1,重要修改配置文件中的UserDirapache2把个人用户作为一个模块,则需要先:
     cd /etc/apache2/mods_enabled
     ln -s /etc/apache2/mods_available/userdir.conf userdir.conf
     ln -s /etc/apache2/mods_available/userdir.load userdir.load
     apache2ctl restart
 
同时修改主配置文件,注释掉#UserDir public_html这句,再在用户test的主目录/home/test下面创建一个index.html文件,就可以浏览:
     [url]http://yourip/~test[/url]
了。

5)
自动支持中文的问题
 
网页的缺省字符集有参数   AddDefaultCharset ISO-8859-1
 
这时候在浏览器浏览中文网页的时候,会乱码,需要手动设置编码方式为GBKGB2312才能显示中文
 
去掉注释,修改为   AddDefaultCharset GB2312就可以了。

6) Apache
状态信息
 
在安装完 Apache 后,我们需要不断了解服务器的系统各方面的情况。Apache2内建了server-statusserver-info二种查看服务器信息的方法。 server-status是指服务器状态信息,我们可以了解Apache目前运行的情形,包括占用的系统资源、目前联机数量等。server-info 主要是显示Apache的版本、加载的模块信息等。
 
为使用这两项功能,我们必须先修改 /etc/apache2/apache2.conf
 
首先要自己手动添加一行ExtendedStatus On,否则得到的信息会不够详细。
 
然后分别找到和这两段,把两段内前面的注释都去掉,并设置好访问权限。不重视安全的话,可以设置allow from all.
 
再:
  cd /etc/apache2/mods_enabled
  ln -s /etc/apache2/mods_available/info.load info.load

 
然后就可以在浏览器以[url]http://hostname/server-info[/url]访问了。


6)
其他一些我认为比较重要的配置参数:
  ServerRoot:
指出服务器保存其配置、出错和日志文件等的根目录。
  Listen:
允许你绑定Apache服务到指定的IP地址和端口上,以取代默认值
  DocumentRoot:
你的文档的根目录。默认情况下,所有的请求从这个目录进行应答。
  HostnameLookups
:指定记录用户端的名字还是IP地址       
原文链接:[url]http://www.osschool.org/wen/bbs/topic.php?forumid=1&filename=f_243[/url]



返回顶部

发表评论:

Powered By Z-BlogPHP 1.7.3


知识共享许可协议
本作品采用知识共享署名 3.0 中国大陆许可协议进行许可。
网站备案号粤ICP备15104741号-1