构筑LAMP框架之apache
1 Apache的安装、配置
Apache 是 UNIX 系统中普遍使用的WWW服务器软件。根据Netcraft的统计 (http://news.netcraft.com/archives/web_server_survey.html),目前因特网中,有超过百分之六十的服务器是使用Apache来提供网页浏览的服务。Apache可以说是目前世界上使用人数最多的网页服务器软件,它不仅可以在 FreeBSD、UNIX、Linux 中运行,也可以安装在 Windows 操作系统中。
Apache和FreeBSD一样,在软件版本上也有多个分支,目前较稳定的版本有1.3及2.0。Apache1.3系列开发已久,已经十分稳定了,不会再有重大的修改。而Apache2 系列是一个开发较活跃的版本,它和1.3最大的不同在于对多线程(multithreaded)的支持。目前Apache2.0.58是最主要的稳定版本,而2.2.2则还处于开发中的状态。
在Debian上安装Apache软件非常方便,比在Windows系统上安装同类软件更为简单,我只用一行命令就搞定了:
#apt-get install apache2
在Etch中存在Apache的两个版本,Apache1和apache2,前者是一个久经考验的稳定版本,目前仍然有许多的实际应用;后者则具有很多新的功能,处于与时俱进的考虑,我们上面安装的是后者,安装的版本是apache2.0.55。
以下是一些在实际使用中常常会遇到的问题:
1) 配置文件的位置:
在Etch中位于 /etc/apache2/apache2.conf
在其他版本可能位置和名称有所不同,与apache1的位置也不同。
在/etc/apache2/下面,还有两个目录,分别是mods-available和mods-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,重要修改配置文件中的UserDir,apache2把个人用户作为一个模块,则需要先:
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文件,就可以浏览:
http://yourip/~test了。
5) 自动支持中文的问题
网页的缺省字符集有参数 AddDefaultCharset ISO-8859-1
这时候在浏览器浏览中文网页的时候,会乱码,需要手动设置编码方式为GBK或GB2312才能显示中文
去掉注释,修改为 AddDefaultCharset GB2312就可以了。
6) Apache 状态信息
在安装完 Apache 后,我们需要不断了解服务器的系统各方面的情况。Apache2内建了server-status及server-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
然后就可以在浏览器以http://hostname/server-info访问了。
6) 其他一些我认为比较重要的配置参数:
ServerRoot:指出服务器保存其配置、出错和日志文件等的根目录。
Listen:允许你绑定Apache服务到指定的IP地址和端口上,以取代默认值
DocumentRoot:你的文档的根目录。默认情况下,所有的请求从这个目录进行应答。
HostnameLookups:指定记录用户端的名字还是IP地址
关键字:apache、数据库、服务器
新文章:
- CentOS7下图形配置网络的方法
- CentOS 7如何添加删除用户
- 如何解决centos7双系统后丢失windows启动项
- CentOS单网卡如何批量添加不同IP段
- CentOS下iconv命令的介绍
- Centos7 SSH密钥登陆及密码密钥双重验证详解
- CentOS 7.1添加删除用户的方法
- CentOS查找/扫描局域网打印机IP讲解
- CentOS7使用hostapd实现无AP模式的详解
- su命令不能切换root的解决方法
- 解决VMware下CentOS7网络重启出错
- 解决Centos7双系统后丢失windows启动项
- CentOS下如何避免文件覆盖
- CentOS7和CentOS6系统有什么不同呢
- Centos 6.6默认iptable规则详解