安装Apache和PHP的一些补充,一篇很实用的文章

 更新时间:2016年11月25日 15:18  点击:2042
Anywhere     liuxiLzl@163.net
PHP的安装步骤,网上有很多资料,都非常详细。但是,由于Apache,PHP这类自由软件的安装并不象商业软件那样有一个友好的用户界面,许多网友又很少碰上这类东东,所以尽管旁边有一份安装资料,但还是碰上许多问题。我在国内许多关于Linux和php的论坛上,也注意到了不少网友总问相似的问题。因此,我把我所知道的这类问题的解决方法写出来,不对的地方,还请各位指出。
    一、自由软件的安装,无论是在Win32还是在Linux,一般都有README,安装之前,仔细读一读,会有很多收获。
二、安装Apache
    这一步应该比较简单,只要你记得设置httpd.conf里面的BindAddress、ServerName、DocumentRoot ,应该就可以看到熟悉的Apache图标了。BindAddress是指可以接听的IP地址,可以是*、IP地址,也可以是完整的域名。ServerName是主机名,如果没有域名,可以用IP。DocumentRoot为预设的首页位置。修改httpd.conf之后要记得重起Apache。
    三、安装PHP
    这一步问题比较多,归根结底就是两个原因,一个是PHP没有起作用,这是因为httpd.conf中关于PHP部分的设置有问题;另一个问题是PHP启动了,但运行PHP文件的时候有错误,这是因为php.ini没有设置好。
    1、httpd.conf的设置
    在win32下,这几行是不能少的
    ScriptAlias /php "d:/php/php.exe"
    Action application/x-httpd-php "/php"
       AddType application/x-httpd-php .php .php3
       前两行指出PHP脚本解释器的位置,第三行指出PHP脚本要解释的文件后缀。
    如果不是PHP4而是PHP3,把"application/x-httpd-php" 改为 "......httpd-php3",切记。
    前面两行如果没有设置好,将会出现下载或者在页面显示PHP文件的情况。
在Linux中,如果PHP以Apache模块方式运行,那么只添加第三行就可以了,但是在安装的时候就应该注意步骤了,必须先安装PHP,之后 configure Apache的时候,要加上 --activate-module={libphp4.a的路径},然后 make,make install ......
Linux服务器升级步骤
一.    检测MySQL、Apache、PHP的安装模式:
这部分的主要目的是了解MySQL、Apache、PHP的安装模式,从而选择以何种方式删除之前的旧版本。
1.    MySQL:
# rpm 5.1.2 AuthDBMUserFile
语法: AuthDBMUserFile 文件名称
用於: directory, .htaccess
需求: AuthConfig
状态: 扩充
模组: mod_auth_dbm
AuthDBMUserFile 这个文件设定作为验认之用的 DBM 文件名称,其中
包含使用者与密码的列表。文件名称是该使用者文件的绝对路径。
这个文件是以使用者名称作为关键。使用者後的值是 crypt() 加密过
的密码,其後可以加上选择性的冒号以及随意的资料。服务器将会忽略
这些冒号跟资料。
安全: 确定 AuthDBMUserFile 存放在服务器的文件树之外;不要把它
放在它所要保护的目录里。否则客户端将能下载 AuthDBMUserFile 。
参阅 AuthName, AuthType 以及 AuthDBMGroupFile 。
5.2 mod_cookies 模组
这个模组包含在 mod_cookies.c 这个文件里,而且依预设不会编译进
去。它提供 Netscape(TM) cookies 。这个模组没有说明文件。
5.2.1 CookieLog
语法: CookieLog 文件名称
用於: server config, virtual host
状态: 实验
模组: mod_cookies
CookieLog 这个指令设定记录 cookies 用的文件名称。这个文件名称
是 ServerRoot 的相对目录。
5.3 mod_dld 模组
这个模组包含在 mod_dld.c 这个文件里,而且依预设不会编译进去。
它提供在启动时载入可执行文件及模组到服务器里去的功能,使用 GNU dld
程序库。
5.3.1 摘要
这个选用性的 dld 模组是一段作为观念证明(proof-of-concept)用的
程序码,它如同配置自己一般载入其它模组到服务器里去(只有第一次
;目前为止,重新读取配置档无法影响到已经载入的模组),使用 GNU
的动态连结程序库(DLD) 。它没有预设编译进去,因为不是每个人都有
DLD ,但是我在试的时候可以。(注意最後几个字)。
注意因为某些缘故,LoadFile /lib/libc.a 看来似乎是必须的。
注意: 当服务器起动时 DLD 需要读取在服务器程序之外的符号表格;
如果服务器在起动时不能找到它自己的程序码那麽这些指令就会失败。
5.3.2 LoadFile
语法: LoadFile 文件名称 文件名称 ...
用於: server config
状态: 实验
模组: mod_dld
LoadFile 这个指令在服务器起动时链结其所指名的目的档或程序库;
这是用来载入某些模组运作时也许需要的额外程序码。文件名称是相对
序(Preface)
这份手册是 1.0 版阿帕奇服务器(Apache HTTP server)的文件。这个
服务器是阿帕奇计划的产品,此计划试图回应某些对积极发展一套可以
免费取得之 HTTP 服务器的关心。这个计划的目标是提供一个安全的,
有效率的而且可以扩充功能的服务器,此服务器提供 HTTP 服务且符合
目前的 HTTP 标准。
这套阿帕奇 httpd 服务器的设计不但与 NCSA httpd 1.3 相容,并且
提供常常有人要求的特色,像是
。作为身分验认之用的 DBM 资料库
。自定的(customised)错误与问题回应方式
。多重的 directoryindex 指令
。不限次数的 Alias 以及 Redirect 指令
。以内容为基础的(Content-based) 文件协商(negotiation)
。虚拟服务器
阿帕奇授权书
Copyright 1995 The Apache Group. All rights reserved.
假若符合下列条件,无论是否经过修改,以原始程序及执行程序的形式
散播与使用都是许可的:
1. 散播原始程序码必须保留上述的版权告示,这份条件列表以及下列
声明。
2. 以执行程序码的形式散播必须在随附散播的文件以及/或是资讯中
重现上述的版权告示,这份条件列表以及下列声明。
3. 所有提及或使用这套软体特色的广告都必须显示下列讯息:
`This product includes software developed by the Apache Group
for use in the Apache HTTP server project (http://www.apache.org/).'
4. `Apache Server' 以及 `Apache Group' 这些名称没有随附前述的
的许可不得用来为这套软体的衍生产品背书或鼓励采用。
5. 以任何形式散播都必须保留下列讯息:
`This product includes software developed by the Apache Group
for use in the Apache HTTP server project (http://www.apache.org/).'
Redistribution and use in source and binary forms, with or without
modification, are permitted provided that the following condictions
are met:
1. Redistribution of source code must retain the above copyright
notice, this list of condictions and the following disclaimer.
2. Redistribution in binary form must reproduce the above copyright
notice, this list of condictions and the following disclaimer in
the documentation and/or other materials provided with the
PidFile directive
Syntax: PidFile filename
Default: PidFile logs/httpd.pid
Context: server config
Status: core
The PidFile directive sets the file to which the server records the process id of the daemon. If the filename does not begin with a slash (/) then it is assumed to be relative to the ServerRoot. The PidFile is only used in standalone mode.
It is often useful to be able to send the server a signal, so that it closes and then reopens its ErrorLog and TransferLog, and re-reads its configuration files. This is done by sending a SIGHUP (kill -1) signal to the process id listed in the PidFile.
The PidFile is subject to the same warnings about log file placement and security.
--------------------------------------------------------------------------------
Port directive
Syntax: Port number
Default: Port 80
Context: server config
Status: core
Number is a number from 0 to 65535; some port numbers (especially below 1024) are reserved for particular protocols. See /etc/services for a list of some defined ports; the standard port for the http protocol is 80.
The Port directive has two behaviors, the first of which is necessary for NCSA backwards compatibility (and which is confusing in the context of Apache).
In the absence of any Listen or BindAddress directives specifying a port number, a Port directive given in the "main server" (i.e., outside any <VirtualHost> section) sets the network port on which the server listens. If there are any Listen or BindAddress directives specifying :number then Port has no effect on what address the server listens at.
The Port directive sets the SERVER_PORT environment variable (for CGI and SSI), and is used when the server must generate a URL that refers to itself (for example when creating an external redirect to itself). This behaviour is modified by UseCanonicalName.
In no event does a Port setting affect what ports a VirtualHost responds on, the VirtualHost directive itself is used for that.
[!--infotagslink--]

相关文章

  • PHP7快速编译安装的步骤

    编译安装非常的简单了我们现在的php版本已经到了php7了,下文小编来为各位介绍一篇关于PHP7快速编译安装的步骤,希望文章能够帮助到各位。 一、安装必要一些依赖 yum...2016-11-25
  • Rstudio中安装package出现的问题及解决

    这篇文章主要介绍了Rstudio中安装package出现的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧...2021-05-06
  • PHP编译安装后PHP-FPM使用笔记

    PHP-FPM我们相信各位用高版本的php经常使用到了,下面整理了一些关于PHP-FPM的笔记,有兴趣的可进来看看。 今天赶上了123System OPenVZ VPS全场半价的机会,购入了一...2016-11-25
  • 安装和使用percona-toolkit来辅助操作MySQL的基本教程

    一、percona-toolkit简介 percona-toolkit是一组高级命令行工具的集合,用来执行各种通过手工执行非常复杂和麻烦的mysql和系统任务,这些任务包括: 检查master和slave数据的一致性 有效地对记录进行归档 查找重复的索...2015-11-24
  • Linux安装Pytorch1.8GPU(CUDA11.1)的实现

    这篇文章主要介绍了Linux安装Pytorch1.8GPU(CUDA11.1)的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-03-25
  • vscode安装git及项目开发过程

    这篇文章主要介绍了vscode安装git及项目开发过程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-05-19
  • Visual Studio 2015下载和安装图文教程

    这篇文章主要为大家详细介绍了Visual Studio 2015下载和安装图文教程,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-09-22
  • Node调试工具JSHint的安装及配置教程

    现在我们介绍一种在Node下检查简单错误的JS代码验证工具JSHint。  JSHint的具体介绍参考http://www.jshint.com/about/,说直白点儿,JSHint就是一个检查JS代码规范与否的工具,它可以用来检查任何(包括server端和client端...2014-05-31
  • Centos中彻底删除Mysql(rpm、yum安装的情况)

    我用的centos6,mysql让我整出了各种问题,我想重装一个全新的mysql,yum remove mysql-server mysql之后再install并不能得到一个干净的mysql,原来的/etc/my.cnf依然没变,datadir里面的数据已没有任何变化,手动删除/etc/my.cn...2015-03-15
  • js实现跨域的4种实用方法原理分析

    什么是js跨域呐?js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据。只要协议、域名、端口有任何一个不同,都被当作是不同的域。要...2015-10-30
  • 在PyCharm中安装PaddlePaddle的方法

    这篇文章主要介绍了在PyCharm中安装PaddlePaddle的方法,本文给大家介绍的非常想详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-02-05
  • Ubuntu20.04安装cuda10.1的步骤(图文教程)

    这篇文章主要介绍了Ubuntu20.04安装cuda10.1的步骤(图文教程),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-07-30
  • js实现跨域的4种实用方法原理分析

    什么是js跨域呐?js跨域是指通过js在不同的域之间进行数据传输或通信,比如用ajax向一个不同的域请求数据,或者通过js获取页面中不同域的框架中(iframe)的数据。只要协议、域名、端口有任何一个不同,都被当作是不同的域。要...2015-10-30
  • linux服务器快速卸载安装node环境(简单上手)

    这篇文章主要介绍了linux服务器快速卸载安装node环境(简单上手),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-02-22
  • Postman安装与使用详细教程 附postman离线安装包

    这篇文章主要介绍了Postman安装与使用详细教程 附postman离线安装包,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2021-03-05
  • uni-app从安装到卸载的入门教程

    这篇文章主要介绍了uni-app从安装到卸载的入门教程,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2020-05-15
  • vs2019安装和使用详细图文教程

    这篇文章主要介绍了vs2019安装和使用详细图文教程,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-06-25
  • RHEL6.5编译安装MySQL5.6.26教程

    一、准备编译环境,安装所需依赖包yum groupinstall 'Development' -y yum install openssl openssl-devel zlib zlib-devel -y yum install readline-devel pcre-devel ncurses-devel bison-devel cmake -y二、编译安...2015-10-21
  • tomcat9 下载安装和配置+整合到eclipse的教程详解

    这篇文章主要介绍了tomcat9 下载安装和配置+整合到eclipse,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-07-28
  • Apache启动报错No space left on device: AH00023该怎么解决

    Apache启动报错No space left on device: AH00023错误可能是进程导致了,虽然小编不知道什么原因但网上提供的解决办法确实是可以解决我们的问题,下面来看看。对于这类错误是因为linux系统的ipc信号量造成的,apache启动时...2015-10-21