Home » Linux » Ubuntu 12.04+ 搭建 WEB 环境
  • 27
  • 09月

Ubuntu 12.04+ 搭建 WEB 环境

本文介绍 Ubuntu 12.04+ 系统通过 TuxLite 脚本搭建 WEB 环境的详细步骤。

系统选择建议:

  • LNMP:CentOS 或者 Ubuntu 12.04+,建议 CentOS ,因为后面需要重新编译 Nignx 加入替换模块。
  • LAMP:建议 Ubuntu + TuxLite,简单省事。

1   准备工作

1.1   更换默认Shell

Ubuntu 默认的 /bin/sh 指向的是 dash ,而 bash 是比较好的一个选择。

那么怎么把sh改为指向bash呢?

最暴力的方法当然是直接把 /bin/sh 的软链接改到 bash 中,如:

ln -s /bin/bash /bin/sh

但是,有优雅一些的方法:

sudo dpkg-reconfigure dash

出现菜单问你是否要 dash 的时候,选 no 就可以了。

1.2   更换 APT 软件源

一般来说,建议使用速度最快的源。

编辑 /etc/apt/sources.list ,最好先做备份,以防万一。

比如,把 cn.archive.ubuntu.com 全部改为 mirrors.163.com 即可。

sed -i 's/cn.archive.ubuntu.com/mirrors.163.com/g' /etc/apt/sources.list

1.3   添加普通用户

添加新用户步骤如下:

  1. 添加新用户: adduser yourUsername
  2. 把新用户加入 sudo 规则内: visudo ,然后添加 yourUsername ALL=(ALL) ALL
  3. 修改 sshd_config 文件, vi /etc/ssh/sshd_config
    • 禁止 root 帐号登录:把 PermitRootLogin yes 改成 PermitRootLogin no
    • 修改 ssh 端口:把 Port 22 中 22 改成你自己想要的端口
  4. 重启 ssh 服务: /etc/init.d/ssh restart

退出 vps 就登录到 yourUsername,而且不能用 root 登录了。

2   通过 TuxLite 安装 LAMP 环境

TuxLite 是为 Debian 和 Ubuntu 编写的 LAMP / LNMP 套件部署脚本程序。

官方地址: http://tuxlite.com/

源码: https://github.com/Mins/TuxLite

2.1   安装

注解

  • 安装前请确保默认 shbash
  • WEB 服务器建议一次性选好,好像脚本切换服务器会有问题。

Create directory to hold TuxLite scripts and enter new directory:

mkdir tuxlite
cd tuxlite

Download the desired script. Copy script link from "Download" section:

wget http://tuxlite.com/scripts/tuxlite.tar.gz

Or download using Git (ignore this section if you are unfamiliar with Git):

aptitude install git
git clone https://github.com/Mins/TuxLite.git
cd TuxLite

Extract contents of tarball:

tar xzf tuxlite.tar.gz

Edit options to enter server IP, MySQL password etc:

nano options.conf

注解

set WEBSERVER=2 for LAMP

Make all scripts executable:

chmod 700 *.sh
chmod 700 options.conf

Update APT database and install aptitude:

apt-get update && apt-get -y install aptitude

Add a new Linux user because root user will be disabled after installation:

adduser johndoe

Install LAMP or LNMP stack:

./install.sh

Add domains to the user:

./domain.sh add johndoe yourdomain.com
./domain.sh add johndoe subdomain.yourdomain.com

Install Adminer or phpMyAdmin:

./setup.sh dbgui

Enable/disable public viewing of Adminer/phpMyAdmin:

./domain.sh dbgui on
./domain.sh dbgui off

2.3   已知问题

2.3.1   502 Bad Gateway

症状: HTML 文件可以正常访问,访问 PHP 文件时出现 502 Bad Gateway 。

引起这个问题的主要原因是权限问题。

默认情况下:

/var/run/php-fpm-{{username}}.sock
/var/run/php5-fpm-www-data.sock

拥有者是 root:root ,而一般用户对这个没有读写权限,所以就会出现 502 。

解法方法:

编辑 /etc/php5/fpm/pool.d/{{username}}.conf 文件,找到下面这三行,把前面的 ; 去掉:

listen.owner = www-data
listen.group = www-data
listen.mode = 0660

然后重启 PHP5-FPM:

sudo /etc/init.d/php5-fpm restart

3   安装 FTP 服务

安装 vsftpd

sudo aptitude install vsftpd

vsftpd 虚拟用户管理脚本: https://code.jd.com/pub/pick/wtx358/c3fdcb6bbc2bd6e8263cceb41c22b64b

4   WORDPRESS安装

  1. 创建数据库

    mysql -uroot -p
    mysql > create database dbname;
    
  2. 配置 wp-config.php

    主要是 MYSQL 数据库连接信息

  3. 上传 WP 源码

    ssh登录安装或者通过 FTP(lftp) 上传。

Tags:   ubuntuweb .