zoukankan      html  css  js  c++  java
  • ubuntu下apache与php配置

    实验环境

    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.0 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.0.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.8-0ubuntu0.16.04.2
    
    System    Linux tomato 4.4.0-34-generic #53-Ubuntu SMP Wed Jul 27 16:06:39 UTC 2016 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
    ......

    感动!

  • 相关阅读:
    多维数组和元组
    字符串
    列表
    JQuery事件的绑定
    JQuery设置缓慢下拉大行多次执行的解决办法,以及stop()函数的简单理解
    JQuery_AJAX简单笔记
    C#后台验证身份证号码的一个方法
    JQuery AJAX请求aspx后台方法
    网络编辑器插件ckeditor+ckfinder配置
    请编程实现:产生一个int数组,长度为100,并向其中随机插入1-100,并且不能重复(百度了一下,get一种高性能算法,非递归)
  • 原文地址:https://www.cnblogs.com/tradoff/p/5854965.html
Copyright © 2011-2022 走看看