>  기사  >  백엔드 개발  >  ubuntu下配置php服务器环境

ubuntu下配置php服务器环境

WBOY
WBOY원래의
2016-07-25 08:54:13950검색
  1. $sudoapt-getinstallapache2
复制代码

然后,运行apache: $sudo/etc/init.d/apache2restart

apache在安装期间将会新建一个目录:/var/www,该目录是该服务器中存放文档的根目录。 只要在浏览器的地址栏输入http://localhost/或机器的ip地址就能访问放置在此目录中的所有文档。

二、安装php服务器配置 安装方法也很简单:

  1. $sudo apt-getinstalllibapache2-mod-php5
复制代码

重新启动apache以加载上面安装的模块:

  1. $sudo /etc/init.d/apache2restart
复制代码

为了验证php模块是否正确加载,我们可以建立一个php文件,然后尝试通过web服务器访问该文件。此外,我们知道php内建了一个phpinfo函数,该函数能够给出它的环境的详细信息。所以我们还可以利用下面的命令来检查php的工作情况:

  1. sudo sh-c"echo''>/var/www/info.php"
复制代码

之后,在浏览器地址栏键入http://localhost/info.php,然后回车,这时应该能看到一个颜面,给出刚才安装的php的详细信息。需要注意的是,如果在此过程中浏览器不显示页面,而是提示你下载文件,这就说明apache没有正确加载php模块。解决问题的办法是,在/etc/apache2/apache2.conf或/etc/apache2/mods-enabled/php5.conf文件中加入下面一行命令: addtypeapplication/x-httpd-php.php.phtml.php3

加入上面的命令行后,为了保证apache重新读取配置文件关闭,可以通过下面的命令将其关闭,然后再加以启动:

  1. $sudo /etc/init.d/apache2stop
  2. $sudo /etc/init.d/apache2start
复制代码

三、配置动态虚拟主机 一般情况下,我们会在web服务器上寄放多个web站点,并且每个站点都有它自己的虚拟服务器。对于apache来说,它同时支持基于名称的虚拟服务器和基于ip的服务器。

对于基于ip的虚拟服务器,每个站点都具有一个单独的ip地址,这样的缺点是使用太多的ip地址,但如今ipv4的地址已有枯竭的迹象,所以不提倡使用,通常在要求使用ssl时才使用。

对于基于名称的虚拟服务器,多个web站点共享一个ip地址。在这种情况下,通常根据http请求头部来决定将其发给哪一个站点。为此,我们需要为每个虚拟服务器分别建立一个配置,给作为web站点的根的目录以及主机命名。但是,如果这样的话我们每当添加一个新的虚拟服务器时,就要修改apache的配置并重新启动,这的确很烦人呢!

值得高兴的是,如果使用动态虚拟主机技术的话,可以随时加入虚拟主机时而不必重新配置或启动apache。该技术要用到一个模块,称为vhost_alias。我们可以通过在apache2已启用的模块目录中建立一个符号链接来启用该模块,命令如下所示:

  1. $sudo ln-s/etc/apache2/mods-available/vhost_alias.load
  2. /etc/apache2/mods-enabled/vhost_alias.load
复制代码

要想使vhost_alias正常工作,还需要修改/etc/apache2/apache2.conf来关闭常规名称(canonicalnames),修改日志文件的配置,并为虚拟主机规定存放位置。

实例:

  1. #从"host:"头中取得主机名
  2. usecanonicalnameoff
  3. #这种日志格式可以从第一个字段中提取出主机名
  4. logformat"%v%h%l%u%t"%r"%s%b"vcommon
  5. customlog/var/log/apache2/access_logvcommon
  6. #在返回请求的文件名路径中包含主机名
  7. virtualdocumentroot/var/www/vhosts/%0/web
  8. virtualscriptalias/var/www/vhosts/%0/cgi-bin
复制代码

接下来,创建存放虚拟主机的目录,命令如下:

  1. $sudo mkdir/var/www/vhosts
复制代码

新建一个基干虚拟服务器,命令如下所示:

  1. $sudo mkdir-p/var/www/vhosts/skeleton/cgi-bin
  2. $sudo cp-a/var/www/apache2-default/var/www/vhosts/skeleton/web
复制代码

重新启动apache2,使得上面的配置生效,方法如下所示:

  1. $sudo /etc/init.d/apache2restart
复制代码

好了,现在我们可以建立基于名称的虚拟主机了。方法是将基干拷贝到要响应的主机名。 举例来说,要想为bbs.it-home.org新建一个虚拟服务器的话,只要运行下面的命令就行了:

  1. $sudo cp-a/var/www/vhosts/skeleton/var/www/vhosts/
  2. bbs.it-home.org
复制代码

现在,所有到达你的apache服务器的http连接中,只要其“host:”头部被设成bbs.it-home.org,那么将由对应的虚拟服务器来响应。 为了早些看到我们的劳动成果,可以在本地进行测试。为此编辑/etc/hosts,加入下面一项: 127.0.0.1 bbs.it-home.org 这样,在本机上就能访问该站点了。 但是,为了让所有用户都能访问虚拟主机,还需申请域名,并且还需要在公共dns服务器上进行设置。



성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.