• Ubuntu14.04下搭建LANMP环境(Apache+Nginx+MySQL+PHP)


    每回安装环境都要去百度几文章,今天索性自己写一篇,以后省去百度的麻烦了,本文介绍的是在Ubuntu14.04下搭建LANMP环境(Apache+Nginx+MySQL+PHP),如果你只想安装lamp或者lnmp都通用,直接拿去。
    首先分两步走:
    每一、先更新系统然后安装必要的依赖(这一步为以后的扩展提供铺垫)
    第二、安装mysql apache2 php

    sudo apt-get update
    sudo apt-get install build-essential gcc g++ autoconf libiconv-hook-dev libmcrypt-dev libxml2-dev libmysqlclient-dev libcurl4-openssl-dev libjpeg8-dev libpng12-dev libfreetype6-dev snmp mcrypt
     
    sudo apt-get install mysql-server mysql-client
    sudo apt-get install apache2
    sudo apt-get install php5 php5-common php5-mysql php5-curl php5-gd php5-intl php-pear php5-imagick php5-imap php5-mcrypt php5-memcache php5-ming php5-ps php5-pspell php5-recode php5-snmp php5-sqlite php5-tidy php5-xmlrpc php5-xsl php5-xcache php5-mcrypt

      重启apache2

    sudo service apache2 restart
    

      ubuntu下apache2虚拟主机配置

    cd /etc/apache2/sites-available
    ls
    000-default.conf  default-ssl.conf
    sudo cp 000-default.conf 000-default.conf.bak
    sudo vim 000-default.conf
    

      文件修改为以下内容

    <VirtualHost *:80>
     
        ServerAdmin webmaster@localhost
        DocumentRoot /data/www
     
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
     
        <Directory />
            Options Indexes FollowSymLinks
            AllowOverride None
            Require all granted
        </Directory>
     
    </VirtualHost>
    

      重启apache2测试效果

    sudo service apache2 restart
    

      

    cd chmod 777 /data/www
     
    vim info.php
     
    <?php
    phpinfo();
    

      在浏览器上http://localhost/info.php

    ps aux | grep apache2
    root      3749  0.0  0.7 568604 28152 ?        Ss   10:05   0:00 /usr/sbin/apache2 -k start
    www-data  3753  0.0  0.6 797128 24504 ?        S    10:05   0:00 /usr/sbin/apache2 -k start
    www-data  3754  0.0  0.7 574664 30756 ?        S    10:05   0:00 /usr/sbin/apache2 -k start
    www-data  3755  0.0  0.5 571040 22676 ?        S    10:05   0:00 /usr/sbin/apache2 -k start
    www-data  3756  0.0  0.4 569892 18596 ?        S    10:05   0:00 /usr/sbin/apache2 -k start
    www-data  3757  0.0  0.4 569884 18660 ?        S    10:05   0:00 /usr/sbin/apache2 -k start
    www-data  3808  0.0  0.5 570500 21040 ?        S    10:05   0:00 /usr/sbin/apache2 -k start
    zzs       4187  0.0  0.0  15960   924 pts/0    S+   10:53   0:00 grep --color=auto apache2
    

      第三步、安装Nginx

    sudo apt-get install nginx
    sudo apt-get install php5-fpm
    cd /etc/nginx/sites-available
    sudo cp default default.bak
    

      配置Nginx使其支持PHP

    cd /etc/nginx/sites-available
     
    sudo vim default
    

      Nginx主机配置(端口改为8080,根目录和刚才的apache2要目录一样/data/www)

    server {
        listen 8080 default_server; #修改端口
        listen [::]:8080 default_server ipv6only=on; #修改端口
     
        root /data/www; #修改网站根目录
        index index.php index.html index.htm; #添加index.php索引文件
     
        # Make site accessible from http://localhost/
        server_name localhost;
     
        location / {
            # First attempt to serve request as file, then
            # as directory, then fall back to displaying a 404.
            try_files $uri $uri/ =404;
            # Uncomment to enable naxsi on this location
            # include /etc/nginx/naxsi.rules
        }
     
        location ~ .php$ {
            fastcgi_split_path_info ^(.+.php)(/.+)$;
            # NOTE: You should have "cgi.fix_pathinfo = 0;" in php.ini
     
            # With php5-cgi alone:
            #fastcgi_pass 127.0.0.1:9000;
            # With php5-fpm:
            fastcgi_pass unix:/var/run/php5-fpm.sock; #使用套接字方式启动
            fastcgi_index index.php;
            include fastcgi_params;
        }
     
    }
    

      重启服务,查看进程

    sudo service nginx restart
    sudo service php5-fpm restart
    ps aux | grep php-fpm
    root      3803  0.0  0.6 522716 26760 ?        Ss   10:05   0:00 php-fpm: master process (/etc/php5/fpm/php-fpm.conf)                    
    www-data  3806  0.0  0.4 751104 16396 ?        S    10:05   0:00 php-fpm: pool www                                                       
    www-data  3807  0.0  0.2 522716  8432 ?        S    10:05   0:00 php-fpm: pool www                                                       
    zzs       4234  0.0  0.0  15956   924 pts/0    S+   11:06   0:00 grep --color=auto php-fpm
    ps aux | grep nginx
    root      3782  0.0  0.0  85868  1360 ?        Ss   10:05   0:00 nginx: master process /usr/sbin/nginx
    www-data  3783  0.0  0.0  86164  2032 ?        S    10:05   0:00 nginx: worker process
    www-data  3784  0.0  0.0  86164  2520 ?        S    10:05   0:00 nginx: worker process
    www-data  3785  0.0  0.0  86164  2032 ?        S    10:05   0:00 nginx: worker process
    www-data  3786  0.0  0.0  86164  1776 ?        S    10:05   0:00 nginx: worker process
    zzs       4236  0.0  0.0  15956   916 pts/0    S+   11:06   0:00 grep --color=auto
    

      

    附apache2虚拟主机配置方法:

    在Apache2中,有效的站点信息都存放在/etc/apache2/sites-available/文件 里面。 我们可以添加格式如下的信息来增加一个有效的虚拟空间,将default文件复制一份改一下里面的路径就可以了,要启用配置则则将此文件做一个软链接到 /etc/apache2/sites-enabled/ 目录下
    下面具个例子说明:

    $ cd /etc/apache2/sites-available/
    $ sudo cp 000-default.conf test.conf
    $ mkdir /data/www/logs
    <VirtualHost *:80>
     
        #ServerAdmin webmaster@localhost
        ServerName test.com
        ServerAlias www.test.com
        DocumentRoot /data/www/test
     
        ErrorLog /data/www/logs/test-error.log
        CustomLog /data/www/logs/test-access.log combined
     
        <Directory />
            Options Indexes FollowSymLinks
            AllowOverride None
            Require all granted
        </Directory>
     
    </VirtualHost>
    

      添加软链接到/etc/apache2/sites-enabled目录

    $ sudo ln -s /etc/apache2/sites-available/test.conf /etc/apache2/sites-enabled/test.conf
    

      

    $ cd /etc/apache2/sites-enabled
     
    $ ls -al
    drwxr-xr-x 2 root root 4096 12月 14 11:48 ./
    drwxr-xr-x 8 root root 4096 12月 14 00:13 ../
    lrwxrwxrwx 1 root root   35 12月 14 00:00 000-default.conf -> ../sites-available/000-default.conf
    lrwxrwxrwx 1 root root   38 12月 14 11:48 test.conf -> /etc/apache2/sites-available/test.conf
    

      

    注意:

    查看fpm进程是

    ps aux | grep php-fpm
    

      重启服务是

    sudo service php5-fpm restart
    

      不知道为何两者名称不统一,最好用ps aux| grep fpm来查看

  • 相关阅读:
    支付宝和网银在线
    SqlServer 游标逐行更新数据,根据上一行的数据来更新当前行
    JS学习笔记
    17讲案例篇:如何利⽤系统缓存优化程序的运⾏效率
    Angular2入门系列教程1使用Angularcli搭建Angular2开发环境
    angular2最详细的开发环境搭建过程
    [zz]轻量级文本编辑器,Notepad最佳替代品:Notepad++
    倒谱、倒频谱、二次谱分析
    Notepad++正则表达式使用(zz)
    notepad++ TextFX插件的常用命令(zz)
  • 原文地址:https://www.cnblogs.com/jiekexuan/p/4206634.html
Copyright © 2020-2023  润新知