热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

构筑LAMP框架之apache

文章标题:构筑LAMP框架之apache。Linux是中国IT实验室的一个技术频道。包含桌面应用,Linux系统管理,内核研究,嵌入式系统和开源等一些基本分类

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

    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地址原文链接:http://www.osschool.org/wen/bbs/topic.php?forumid=1&filename=f_243


推荐阅读
  • GetWindowLong函数
    今天在看一个代码里头写了GetWindowLong(hwnd,0),我当时就有点费解,靠,上网搜索函数原型说明,死活找不到第 ... [详细]
  • 本文介绍了在开发Android新闻App时,搭建本地服务器的步骤。通过使用XAMPP软件,可以一键式搭建起开发环境,包括Apache、MySQL、PHP、PERL。在本地服务器上新建数据库和表,并设置相应的属性。最后,给出了创建new表的SQL语句。这个教程适合初学者参考。 ... [详细]
  • Windows下配置PHP5.6的方法及注意事项
    本文介绍了在Windows系统下配置PHP5.6的步骤及注意事项,包括下载PHP5.6、解压并配置IIS、添加模块映射、测试等。同时提供了一些常见问题的解决方法,如下载缺失的msvcr110.dll文件等。通过本文的指导,读者可以轻松地在Windows系统下配置PHP5.6,并解决一些常见的配置问题。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文介绍了在SpringBoot中集成thymeleaf前端模版的配置步骤,包括在application.properties配置文件中添加thymeleaf的配置信息,引入thymeleaf的jar包,以及创建PageController并添加index方法。 ... [详细]
  • PDF内容编辑的两种小方法,你知道怎么操作吗?
    本文介绍了两种PDF内容编辑的方法:迅捷PDF编辑器和Adobe Acrobat DC。使用迅捷PDF编辑器,用户可以通过选择需要更改的文字内容并设置字体形式、大小和颜色来编辑PDF文件。而使用Adobe Acrobat DC,则可以通过在软件中点击编辑来编辑PDF文件。PDF文件的编辑可以帮助办公人员进行文件内容的修改和定制。 ... [详细]
  • 本文介绍了一个免费的asp.net控件,该控件具备数据显示、录入、更新、删除等功能。它比datagrid更易用、更实用,同时具备多种功能,例如属性设置、数据排序、字段类型格式化显示、密码字段支持、图像字段上传和生成缩略图等。此外,它还提供了数据验证、日期选择器、数字选择器等功能,以及防止注入攻击、非本页提交和自动分页技术等安全性和性能优化功能。最后,该控件还支持字段值合计和数据导出功能。总之,该控件功能强大且免费,适用于asp.net开发。 ... [详细]
  • 本文介绍了在Ubuntu下制作deb安装包及离线安装包的方法,通过备份/var/cache/apt/archives文件夹中的安装包,并建立包列表及依赖信息文件,添加本地源,更新源列表,可以在没有网络的情况下更新系统。同时提供了命令示例和资源下载链接。 ... [详细]
  • 如何实现JDK版本的切换功能,解决开发环境冲突问题
    本文介绍了在开发过程中遇到JDK版本冲突的情况,以及如何通过修改环境变量实现JDK版本的切换功能,解决开发环境冲突的问题。通过合理的切换环境,可以更好地进行项目开发。同时,提醒读者注意不仅限于1.7和1.8版本的转换,还要适应不同项目和个人开发习惯的需求。 ... [详细]
  • 使用chrome编辑器实现网页截图功能的方法
    本文介绍了在chrome浏览器中使用编辑器实现网页截图功能的方法。通过在地址栏中输入特定命令,打开控制台并调用命令面板,用户可以方便地进行网页截图操作。 ... [详细]
  • Unity3D引擎的体系结构和功能详解
    本文详细介绍了Unity3D引擎的体系结构和功能。Unity3D是一个屡获殊荣的工具,用于创建交互式3D应用程序。它由游戏引擎和编辑器组成,支持C#、Boo和JavaScript脚本编程。该引擎涵盖了声音、图形、物理和网络功能等主题。Unity编辑器具有多语言脚本编辑器和预制装配系统等特点。本文还介绍了Unity的许可证情况。Unity基本功能有限的免费,适用于PC、MAC和Web开发。其他平台或完整的功能集需要购买许可证。 ... [详细]
  • PHP组合工具以及开发所需的工具
    本文介绍了PHP开发中常用的组合工具和开发所需的工具。对于数据分析软件,包括Excel、hihidata、SPSS、SAS、MARLAB、Eview以及各种BI与报表工具等。同时还介绍了PHP开发所需的PHP MySQL Apache集成环境,包括推荐的AppServ等版本。 ... [详细]
  • 本文讨论了如何优化解决hdu 1003 java题目的动态规划方法,通过分析加法规则和最大和的性质,提出了一种优化的思路。具体方法是,当从1加到n为负时,即sum(1,n)sum(n,s),可以继续加法计算。同时,还考虑了两种特殊情况:都是负数的情况和有0的情况。最后,通过使用Scanner类来获取输入数据。 ... [详细]
  • 腾讯安全平台部招聘安全工程师和数据分析工程师
    腾讯安全平台部正在招聘安全工程师和数据分析工程师。安全工程师负责安全问题和安全事件的跟踪和分析,提供安全测试技术支持;数据分析工程师负责安全产品相关系统数据统计和分析挖掘,通过用户行为数据建模为业务决策提供参考。招聘要求包括熟悉渗透测试和常见安全工具原理,精通Web漏洞,熟练使用多门编程语言等。有相关工作经验和在安全站点发表作品的候选人优先考虑。 ... [详细]
  • 有关phpfgetss()函数的文章推荐10篇
    有关phpfgetss()函数的文章推荐10篇:了解如何使用PHP的各种文件函数。查看诸如fopen、fclose和feof之类的基本文件函数;了解诸如fgets、fgetss和f ... [详细]
author-avatar
陈上意535
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有