从虚拟主机到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. IE678进入混杂模式

    <!-- 加载公共头部 --> <include file="Public/header" /> 当你在模板页的最上方加注释的说明时,在IE低版本中打开会进 ...

  2. some idea for my personal page

    firstly, dump the old personal page source from Github to Dropbox.then the idea is: 1: make a fake s ...

  3. IIS7添加mp4 MINE类型报错:无法写入配置文件

    解决方法: 方法一: 可能是由于文件为只读属性,所以修改网站文件访问权限,把此文件夹或者文件的写入权限给了这个用户. 方法二: 可能由于网站目录所在的分区是fat32格式,所以要把网站目录放在NTFS ...

  4. java 学习心得

  5. 如何占用你用户的时间 and 如何提高客户的满意度 。 待续

    未来的商业竞争, 可能本质上是在争取客户的时间 嗯..有不定时, 未知的奖励,游戏行业就经常使用, 比如打怪掉装备, 不一定掉什么好东西, 让人充满了期待, 玛雅宝石, 有一定的概率... 觉得公司员 ...

  6. php 5.5 xhprof for windows

    今天看到一个好的性能优软件xhprof(有facebook开发的类库)在国内找了很多网站都没有找到相关php5.5的扩展,只好FQ还是外面的世界精彩一下就找到了link (http://windows ...

  7. TortoiseGit 错误信息Aborting commit due to empty commit message.解决

    错误信息: Aborting commit due to empty commit message. git不能完全退出(退出码 1) (47 ms @ 2016/2/19 14:03:24) 解决办 ...

  8. zoj 3204 Connect them

    最小生成树,我用的是并查集+贪心的写法. #include<stdio.h> #include<string.h> #include<math.h> #includ ...

  9. [妙味DOM]第三课:Event-事件详解1

    知识点总结 焦点事件 onfocus 获取焦点 onblur 失点焦点 obj.focus() 给指定元素设置焦点 obj.blur() 取消指定元素的焦点 obj.select() 选择指定元素里的 ...

  10. iOS开发瀑布流的实现

    //自定义布局,继承于UICollectionViewLayout #import <UIKit/UIKit.h> @class WaterFlowLayout; @protocol  W ...