实验环境

uname -a

Linux tomato 4.4.0-34-generic #53-Ubuntu SMP Wed Jul 27 16:06:39 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

步骤

安装

sudo apt-get update
sudo apt-get install php7. apache2 libapache2-mod-php7.0

修改配置

刚开始的时候我上网查询如何配置apache2和php,很多人都提到了“在httpd.conf中AddType和LoadModule”,然而我找了很久都没找到这个文件,其他各种答案也是没效果。可能这个httpd.conf要下载源码才有吧,用apt安装的没有。于是我去下载了源码,但又是一大堆的依赖包什么的,也是失败了。在图书馆搞了4个小时,感觉身体被掏空......

后来我从图书馆回到宿舍,平静了一下,打开了刚刚看过的配置文件:

cd /etc/apache2
less apache2.conf

我被注释里的目录数吸引了:

于是我认真地看了开头两页长的注释:

Summary of how the Apache 2 configuration works in Debian:

The Apache 2 web server configuration in Debian is quite different to
upstream's suggested way to configure the web server. This is because Debian's
default Apache2 installation attempts to make adding and removing modules,
virtual hosts, and extra configuration directives as flexible as possible, in
order to make automating the changes and administering the server as easy as
possible.

apache2在Debian中的配置不同,配置文件分成了几个文件。

apache2.conf is the main configuration file (this file). It puts the pieces
together by including all remaining configuration files when starting up the
web server

apache2.conf是主要的配置文件,将其他配置文件整合在一起。

Configuration files in the mods-enabled/, conf-enabled/ and sites-enabled/
directories contain particular configuration snippets which manage modules,
global configuration fragments, or virtual host configurations,
respectively.

They are activated by symlinking available configuration files from their
respective *-available/ counterparts.

mods-enabled/、conf-enabled/和sites-enabled/这几个目录分别管理modules,
global configuration fragments和virtual host configurations。它们链接到相应的-available文件而起作用。

看到modules我马上就动了:

cd mods-available 
grep -d recurse "AddType"

mime.conf: # AddType allows you to add to or override the MIME configuration
mime.conf: #AddType application/x-gzip .tgz
mime.conf: AddType application/x-compress .Z
mime.conf: AddType application/x-gzip .gz .tgz
mime.conf: AddType application/x-bzip2 .bz2
mime.conf: AddType text/html .shtml
ssl.conf: AddType application/x-x509-ca-cert .crt
ssl.conf: AddType application/x-pkcs7-crl .crl

嘿嘿......

sudo vim mime.conf

在文件中定位到AddType的部分,加入这两行:

AddType application/x-httpd-php-source .phps
AddType application/x-httpd-php .php

保存退出。再来找一下“LoadModule”的归处:

mime.load:LoadModule mime_module /usr/lib/apache2/modules/mod_mime.so
sudo vim mime.load

加入这一句:

LoadModule php7_module /usr/lib/apache2/modules/libphp7..so

重启apache2,使配置生效:

sudo service apache2 restart

测试

apache2的默认web根目录在/etc/apache2/sites-available/000-default.conf中设置:

DocumentRoot /var/www/html/

在该目录下添加测试文件info.php,内容为:

<?php
phpinfo();
?>

保存退出。

打开浏览器,在地址栏输入:

localhost/phpinfo.php

回车。成功跳出由php解释后的信息:

PHP logo
PHP Version 7.0.-0ubuntu0.16.04. System Linux tomato 4.4.--generic #-Ubuntu SMP Wed Jul :: UTC x86_64
Server API Apache 2.0 Handler
Virtual Directory Support disabled
Configuration File (php.ini) Path /etc/php/7.0/apache2
Loaded Configuration File /etc/php/7.0/apache2/php.ini
Scan this dir for additional .ini files /etc/php/7.0/apache2/conf.d
......

感动!

ubuntu下apache与php配置的更多相关文章

  1. [转]:Ubuntu 下Apache安装和配置

    [转]:Ubuntu 下Apache安装和配置_服务器应用_Linux公社-Linux系统门户网站  https://www.linuxidc.com/Linux/2013-06/85827.htm ...

  2. Ubuntu 下Apache安装和配置

    在Ubuntu上安装Apache,有两种方式:1 使用开发包的打包服务,例如使用apt-get命令:2 从源码构建Apache.本文章将详细描述这两种不同的安装方式. 方法一:使用开发包的打包服务—— ...

  3. Ubuntu 下Apache安装和配置2

    在Ubuntu上安装Apache,有两种方式:1 使用开发包的打包服务,例如使用apt-get命令:2 从源码构建Apache.本文章将详细描述这两种不同的安装方式. 方法一:使用开发包的打包服务—— ...

  4. Windows下Apache+mod_python+Django配置

    Windows下Apache+mod_python+Django配置 Apache 首先要安装Apache,我安装的版本是2.2.*: Python python肯定是要安装的,我安装的版本是2.5的 ...

  5. 分享:linux下apache服务器的配置和管理

    linux下apache服务器的配置和管理. 一.两个重要目录: Apache有两个重要的目录:1.配置目录/etc/httpd/conf:2.文档目录/var/www: 二.两种配置模式: Apac ...

  6. windows下apache+https环境配置

    windows下apache+https环境配置 转 https://www.cnblogs.com/sandaizi/p/7519370.html 1.修改配置文件conf/httpd.conf,去 ...

  7. ubuntu下安装mysql和配置远程访问

    ubuntu下安装mysql和配置远程访问   下载安装mysql sudo apt-get install mysql-client mysql-server 安装的时候会提示要设置root密码,如 ...

  8. [转载]Ubuntu下Git服务器安装与配置

    原文地址:Ubuntu下Git服务器安装与配置作者:F民抄 1. 安装 1.1 安装Git-Core: sudo apt-get install git-core 1.2 安装 Gitosis sud ...

  9. Linux下Apache虚拟主机配置

    Linux下Apache虚拟主机的三种配置.这样可以实现一台主机架构多个独立域名网站.其中基于域名的最为常见.性价比也最高.下面PHP程序员雷雪松详细的讲解下Linux下Apache虚拟主机配置的具体 ...

随机推荐

  1. 查看Redis信息和状态

    原文转自:http://redisdoc.com/server/info.html INFO [section] 以一种易于解释(parse)且易于阅读的格式,返回关于 Redis 服务器的各种信息和 ...

  2. Java native(转)

    Java不是完美的,Java的不足除了体现在运行速度上要比传统的C++慢许多之外,Java无法直接访问到操作系统底层(如系统硬件等),为此Java使用native方法来扩展Java程序的功能. 可以将 ...

  3. Timus1132(二次剩余方程求解)

    题目:http://acm.timus.ru/problem.aspx?space=1&num=1132 题意:就是给出方程,p为素数,求在区间内的解. 这个思路很简单,详见:http://a ...

  4. bzoj3123

    首先肯定是主席树但这是一类“动态树”,似乎没有什么好的办法那就暴力呗,这里用到启发式合并,即两棵树合并,重建节点少的的那棵可以用并查集维护连通性查询主席树的建立还是和bzoj2588一样 ; type ...

  5. session与cookie的区别【转】

    我所知道的有以下区别:       1.session保存在服务器,客户端不知道其中的信息:cookie保存在客户端,服务器能够知道其中的信息.       2.session中保存的是对象,cook ...

  6. Dinic 模板

    #include <iostream> #include <cstring> #include <cstdio> #include <queue> us ...

  7. 更新一波题解(最近做的三个dp题)

    很久没写题解了,去ec之前来填一填坑,希望能攒攒人品... 首先是去年上海F题..uvalive7143 题意: 给n个人分 m间房子,每个房间的容量是已知的,其中有k对双胞胎,双胞胎可以看作相同的人 ...

  8. 说说CSS学习中的瓶颈

    虽已数年,但未就学习专门写过文章,这回破处了.苍蝇不叮没有缝隙的鸡蛋,领导不做没有跟拍的表演,同样,想到写CSS学习的文章也是有原因的(虽然我的不少行为没有原因). 情景再现(尊重隐私,下面故事中人名 ...

  9. Django admin进阶

    1. ModelAdmin.inlines 将有外键的子类包含进视图 ,实例: class Author(models.Model): name = models.CharField(max_leng ...

  10. 【GDI+编程】--从三问开始

    一. GDI+三问 1.1 GDI+是什么? GDI+是GDI(Graphics Device Interface)的后继者,是一种图形设备的接口,它构成了Win XP操作系统的子系统的API. 1. ...