从虚拟主机到VPS/服务器的过度,对于普通的非技术型的站长用户来说可能稍许有一些困难,麦子建议我们如果能够在虚拟主机环境中满足建站需要的, 还是用虚拟主机比较好。除非我们真的有需要或者希望从虚拟主机过度到VPS/服务器中来,毕竟后者的自由度比较大,有些项目需要特点的环境支持。

在这篇文章中,麦子将分享我们常用的LAMP环境部 署,我比较喜欢用编译脚本的方法,因为编译脚本可以比WEB面板和网站公开的一键包,当然,对于初级上手的用户来说WEB面板和经过大量用户证明的一键包 也是比较好的,比如LNMP、LLSMP,都还是不错的一键包。这篇文章,麦子将基于Ubuntu环境部署LAMP环 境,LAMP=Linux+Apache+MySQL+PHP.

第一、准备工作

将我们的Linux环境安装Ubuntu 14.04环境版本,这个版本是比较成熟的发行版本。

apt-get update
apt-get upgrade

更新和升级当前最新的版本包。

第二、安装Apache WEB环境

apt-get install apache2

执行上面的命令,安装Apache WEB环境。

第三、编辑Apache配置文件

/etc/apache2/apache2.conf

编辑上面路径的apache2.conf文件。将"<IfModule mpm_prefork_module>"部分修改如下的,这样优化Apache。

<IfModule mpm_prefork_module>
StartServers 2
MinSpareServers 6
MaxSpareServers 12
MaxClients 30
MaxRequestsPerChild 3000
</IfModule>

这个根据我们的VPS配置来调整,我的这台VPS是1GB内存的。

第四、创建虚拟主机

/etc/apache2/sites-available/

在上面这个目录中,如果没有这个目录我们创建这个目录,然后需要设置我们需要建立站点主机的配置文件.conf。比如这里我需要添加yd631.com站点。

/etc/apache2/sites-available/yd631.com.conf

我们需要在上面的目录中添加yd631.com.conf文件,用域名标示表好记忆。不至于在站点多的时候识别错误。

<VirtualHost *:80>
ServerAdmin webmaster@yd631.com
ServerName yd631.com
ServerAlias www.yd631.com
DocumentRoot /var/www/html/yd631.com/public_html/
ErrorLog /var/www/html/yd631.com/logs/error.log
CustomLog /var/www/html/yd631.com/logs/access.log combined
<Directory /path/to/public/website/>
Require all granted
</Directory>
</VirtualHost>

在文件中添加上面的配置脚本,根据我们站点进行调整名称。同样的,如果有其他站点,我们继续在sites-available目录中添加其他域名的.conf配置文件。

第五、创建网站文件和日志存储目录

mkdir -p /var/www/html/yd631.com/public_html
mkdir /var/www/html/yd631.com/logs

我们需要创建目录,一个用来放网站程序文件的,一个放日志的。这个要与我们上面的配置一致,这样才能确保网站能打开正确。

第六、启动站点

a2ensite yd631.com.conf

如果有其他站点,也一样的启动。

第七、启动Apache

service apache2 reload

第八、安装MYSQL数据库及配置

apt-get install mysql-server

根据提示,需要我们输入两次MYSQL数据库ROOT密码。如果我们需要优化和设置数据库的安全,执行mysql_secure_installation命令,然后根据提示删除一些默认数据库表选项。或者ROOT密码设置复杂一些。

第九、创建MYSQL数据库和表

因为我们需要建站,大部分都是MYSQL数据库的,所以需要创建表和用户。

create database 数据库;
grant all on 数据库.* to '数据库用户' identified by '数据库密码';

根据上面的提示,我们修改成自己需要的,比如我这里创建这样的:

create database yd631;
grant all on yd631.* to 'yd631_user' identified by 'yd631.com';

麦子仅仅是演示,我们需要设置复杂一些。创建完毕之后输入quit退出。

第十、安装PHP

apt-get install php5 php-pear

第十一、配置PHP.INI文件

/etc/php5/apache2/php.ini

编辑这个文件。

max_execution_time = 30
memory_limit = 128M
error_reporting = E_COMPILE_ERROR|E_RECOVERABLE_ERROR|E_ERROR|E_CORE_ERROR
display_errors = Off
log_errors = On
error_log = /var/log/php/error.log
register_globals = Off
max_input_time = 30

我们找到对应的参数进行修改,我这是以1GB内存方案的配置。

第十二、创建和设置PHP日志目录

mkdir /var/log/php
chown www-data /var/log/php

第十三、执行MYSQL与PHP兼容生效

apt-get install php5-mysql

最后,我们重启Apache环境service apache2
reload,这样我们可以在上面创建的目录中上传网站文件程序,然后根据网站的建站部署提示输入已经创建的数据库参数信息。这样,我们的LAMP环境就
部署完毕,是不是很简单?比一键包方便很多,而且节省资源。对于FTP,麦子建议使用SFTP工具,不需要单独安装FTP环境,因为不安全。

本文原创地址:http://www.yd631.com/ubuntu-lamp/ 转载注明。

Linux Ubuntu 14.04安装LAMP(Apache+MySQL+PHP)网站环境的更多相关文章

  1. ZH奶酪:Ubuntu 14.04安装LAMP(Linux,Apache,MySQL,PHP)

    (Linux Operating System,Apache Web Server,MySQL database,PHP) 首先,一个三行命令搞定的方法: sudo apt-get update su ...

  2. ubuntu 14.04安装nginx+php+mysql

    前段时间的折腾,颇费一番周折,过程中发现网上的许多资料比较老旧过时了,所以在这里也简单把过程重新整理一遍,争取一帖解决问题. 基于最新的Ubuntu 14.04(2014年9月)搭建nginx.php ...

  3. ubuntu 14.04 安装压缩包版mysql

    既有环境: 1)下载MySQL Community Server 5.6.17 压缩版(mysql-5.6.17-linux-glibc2.5-x86_64.tar.gz) 2)安装目录: /opt/ ...

  4. 安装架设Apache+MySQL+PHP网站环境

    转载自 http://blog.sina.com.cn/s/blog_c02ed6590101d2sl.html 并进行了个人编辑整理 一.安装 MySQL 首先来进行 MySQL 的安装.打开超级终 ...

  5. ZH奶酪:Ubuntu 14.04配置LAMP(Linux、Apache、MySQL、PHP)

    ZH奶酪:Ubuntu 14.04安装LAMP(Linux,Apache,MySQL,PHP) 之前已经介绍过LAMP的安装,这边文章主要讲解一下LAMP的配置. 1.配置Apache (1)调整Ke ...

  6. 在Ubuntu 14.04安装和使用Docker

    Docker是一个开源软件,它可以把一个Linux应用和它所依赖的一切(比如配置文件)都封装到一个容器.然而,Docker与虚拟机不同,它使用了沙箱机制,Docker容器不运行操作系统,它共享主机上的 ...

  7. [转]在Ubuntu 14.04安装和使用Docker

    在Ubuntu 14.04安装和使用Docker 作者:chszs,版权所有,未经同意,不得转载.博主主页:http://blog.csdn.net/chszs Docker是一个开源软件,它可以把一 ...

  8. ubuntu 14.04安装 DevStack的脚本配置文件——localrc

    本文ubuntu 14.04安装 DevStack的脚本配置文件——localrc,本文件名已经逐渐被取代,但是出于后向兼容性,使用该文件仍然可以为stack.sh安装脚本指定安装DevStack时的 ...

  9. Ubuntu 14.04 安装VMware 12

    /*********************************************************************** * Ubuntu 14.04 安装VMware 12 ...

随机推荐

  1. Jsp中out.println()与System.out.println()的区别

    第一次上Web实验课时咱写了一个jsp程序: <% System.out.println("Hello The World"); %> 然后放在浏览器下运行,结果是这样 ...

  2. HDU 4291 A Short problem(2012 ACM/ICPC Asia Regional Chengdu Online)

    HDU 4291 A Short problem(2012 ACM/ICPC Asia Regional Chengdu Online) 题目链接http://acm.hdu.edu.cn/showp ...

  3. Codeforces Round #346 (Div. 2) D Bicycle Race

    D. Bicycle Race 题目链接http://codeforces.com/contest/659/problem/D Description Maria participates in a ...

  4. MyBatis 系列教程1-环境配置

    MyBatis MyBatis 本是apache的一个开源项目iBatis, 2010年这个项目由apache software foundation 迁移到了google code,并且改名为MyB ...

  5. 关于python的元类

    当你创建一个类时: class Foo(Bar): pass Python做了如下的操作: Foo中有__metaclass__这个属性吗?如果是,Python会在内存中通过__metaclass__ ...

  6. Samba: Server setup..

    To make samba shard folder permission clear, there are 3 kind of permission need to be paid attentio ...

  7. hive-1.2.1安装步骤

    一.Hive安装和配置 1.先决条件 已经安装好hadoop-2.4.1,hbase-1.0.0. 2.下载Hive安装包 当前Hive可到apache官网下载,选择的是hive-1.2.1.运行: ...

  8. github的使用与问题

    GIT密钥的生成步骤 一 .设置Git的user name和email: $ git config --global user.name "name" $ git config - ...

  9. module parameters

    Parameter values can be assigned at load time by insmod or modprobe(this can read parameter from con ...

  10. C# 深入了解泛型

    本文是根据网上&书本总结来的. 1. 介绍 泛型程序设计是程序设计语言的一种风格或范式. 泛型允许程序员在强类型程序设计语言中编写代码时使用一些以后才指定的类型,在实例化时(instantia ...