LAMP环境搭建

慕课网 http://www.imooc.com/learn/170 课程学习笔记 老师讲得非常之好
 
LAMP环境搭建 
     Ubuntu-server操作系统
          $ sudo apt-get update
          $ sudo apt-get install openssh-server
          # 然后输入IP可以连接Xshell
          $ sudo apt-get install apache2 php5 mysql-server php5-mysql
          # sudo tasksel install lamp-server
 
# 在/var/www 文件中创建php探针         
php.info
<?php
echo mysql_connect('localhost','root','159753') ? 'success' : 'false';
 
phpinfo();
 
 
# 安装php常用拓展
$ sudo apt-get install php5-gd curl libcurl3 libcurl3-dev php5-curl
$ sudo service apache2 restart
 
# 刷新php探针文件 在phpinfo() 中查看拓展是否安装成功
 
apache php sql的配置文件都在/ect/软件名 目录下,用available 和 enabled 两个文件夹区分可用和使用的配置文件,后者是前者中的软链接
 
 
修改本机中的hosts 路径C:\Windows\System32\drivers\etc\hosts
末尾加上(此为完成文件)
# Copyright (c) 1993-2009 Microsoft Corp.
#
# This is a sample HOSTS file used by Microsoft TCP/IP for Windows.
#
# This file contains the mappings of IP addresses to host names. Each
# entry should be kept on an individual line. The IP address should
# be placed in the first column followed by the corresponding host name.
# The IP address and the host name should be separated by at least one
# space.
#
# Additionally, comments (such as these) may be inserted on individual
# lines or following the machine name denoted by a '#' symbol.
#
# For example:
#
#      102.54.94.97     rhino.acme.com          # source server
#       38.25.63.10     x.acme.com              # x client host
 
# localhost name resolution is handled within DNS itself.
#    127.0.0.1       localhost
#    ::1             localhost
 
#模拟DNS,将以下三个域名指向192.168.1.111
192.168.1.111    video.imooc.com
192.168.1.111    bbs.imooc.com
192.168.1.111    oa.imooc.com
 
# 创建网站根目录 
$ sudo mkdir -p /wwwroot/{video,bbs,oa}
# 修改/etc/apache2/sites-available 中的default文件
$ sudo cp default video
$ sudo vim video
# 设置其中ServerName video.imooc.com
# 路径设置为刚刚创建的路径 (在此文件中有两处路径修改)
# 修改后的前半段为
<VirtualHost *:80>
        ServerName bbs.imooc.com
        ServerAdmin webmaster@localhost
 
        DocumentRoot /wwwroot/bbs
        <Directory />
                Options FollowSymLinks
                AllowOverride None
        </Directory>
        <Directory /wwwroot/bbs/>
                Options Indexes FollowSymLinks MultiViews
                AllowOverride None
                Order allow,deny
                allow from all
        </Directory>
#后将available中的文件软连接到enabled文件夹中
$ sudo ln -s ../sites-available/video video
# 完成后重启apache
$ sudo service apache2 restart
 
 
# 安装phpmyadmin
$ sudo apt-get install phpmyadmin
$ sudo ln -s /usr/share/phpmyadmin /var/www/pma/
 
 
 
 
两道习题
 
课程综合实践题
实践描述:随着慕课网的不断发展,用户量不断上涨,MySQL数据量越来越庞大,占用磁盘空间越来越多,假设现有的服务器硬盘空间告急了。慕课网的服务器运维攻城狮坐不住了,向领导汇报了情况,需要添加硬盘。随后领导也坐不住了,为了满足日益壮大的慕课网正常运行,花点钱购置几块服务器硬盘也不算什么,咬咬牙批准了。攻城狮到IDC上给公司的服务器购置了新硬盘、格式化、挂载到服务器/mnt/mysqlhdd上分分钟完事了。并在网站上发布公告称明天凌晨1:00-3:00慕课网将进行系统维护,到时可能无法正常访问。之后便把这份光荣艰巨的半夜加班任务甩给了苦逼的你,老大们下班后都拍拍屁股回家了。
 
任务要求:假设慕课网目前MySQL数据存储目录是/data/mysql/,请于夜黑风高的凌晨1:00以后把MySQL数据迁移到/mnt/mysqlhdd里。
 
考察技能点:MySQL数据库存储目录修改与数据迁移
 
说明:命令前的$仅表示一条命令的开始,实际操作过程中不要输入,#后面是操作说明或对前一条本条命令的详细解释
 
如下(请根据提示,在横线处写上执行的命令即可):
#数据迁移前停止mysql服务
$ sudo service mysql stop
#将目标目录的所属用户组和用户和文件夹权限修改为mysql:mysql  0700
$ sudo chown –R mysql:mysql /mnt/mysqlhdd
$ sudo chomod –R 700 /mnt/mysqlhdd
#为了防止意外,把现有数据复制(cp)到新目录,而不是移动(mv),为保证文件的权限和属性一致,复制过程一定要添加 -a 参数,由于数据量比较大添加 –v 参数可查看复制的过程
$ sudo cp –av /data/mysql/* /mnt/mysqldata/
#编辑MySQL的配置文件my.cnf
$ sudo vim /etc/mysql/my.cnf
#修改my.cnf文件中的datadir参数值
datadir=/data/mysql/修改为datadir = /mnt/mysqlhdd/
#编辑apparmor关于mysql的权限配置文件
$ vim /etc apparmor.d/usr.sbin.mysqld
#修改usr.sbin.mysqld文件中的数据存储目录的相关权限
/data/mysql/ r修改为 /mnt/mysqlhhd/ r
/data/mysql/** rwk修改为 /mnt/mysqlhhd/** rwk
#保存退出后重启apparmor服务
$ sudo service apparmor reload
#重启apparmor权限服务进程和mysql进程
$ sudo service mysql restart
提高实践题
实践描述:假设慕课网的视频教程网站是部属在UbuntuServer操作系统上的,并且采用的LAMP环境。最近慕课网的攻城狮们研发了两套新系统:
1、    学员交流论坛系统(bbs)
2、    职工在线办公系统(oa)
现在需要将这两个新系统部属到已经存放了慕课网视频教程网站(www.imooc.com)的服务器上,已经为这两个新系统分别分配了二级域名bbs.imooc.com和oa.imooc.com并已将域名解析到www.imooc.com所在服务器的IP。
 
任务要求:假设慕课网视频站点目前存放在目录/webdata/imooc/www,并且当前加载的虚拟主机配置文件是/etc/apache2/sites-available/imooc_www。请从各系统之间互不影响并且便于管理的角度出发,为上述两个新系统分别配置虚拟主机。
 
考察技能点:Apache虚拟主机简单配置
 
说明:命令前的$仅表示一条命令的开始,实际操作过程中不要输入,#后面是操作说明或对前一条本条命令的详细解释
 
如下(请根据提示,在横线处写上执行的命令即可):
#在/webdata/imooc目录下新建两个文件夹bbs和oa,执行完以上命令后,/webdata/imooc目录下有www、bbs、oa三个文件夹,名称与二级域名对应,分别存放三个系统的php文件,这样便于日后的维护与管理。
$ sudo mkdir –p /webdata/imooc/{bbs,oa}
或者分步执行命令
$ sudo mkdir –p /webdata/imooc/bbs
$ sudo mkdir –p /webdata/imooc/oa
#将当前目录切换到虚拟主机“目前可用的”配置目录
$ cd /etc/apache2/sites-available
#每个虚拟主机之间虽然是独立的,但是大多数的配置项是一样的。我们没有必要完全手写一个新的配置文件,通过两次复制已有的imooc_www配置文件分别重命名为imooc_bbs和imooc_oa对应两新系统的根目录。这里的配置文件名称是可以随意选择的,但是为了便于分别和管理,我们使用以上名称。
$ sudo cp imooc_www imooc_bbs && sudo cp imooc_www imooc_oa
#通过vim编辑配置文件
$ sudo vim imooc_bbs
#首先可以看见这个复制过来的配置文件如下
<VirtualHost *:80>
    ServerNamewww.imooc.com
    DocumentRoot/webdata/imooc/www
    <Directory />
        Options FollowSymLinks
        AllowOverride None
    </Directory>
    <Directory /webdata/imooc/www/>
        Options Indexes FollowSymLinksMultiViews
        AllowOverride None
        Order allow,deny
        allow from all
    </Directory>
    #.....此处省略不想关配置项
</VirtualHost>
#将以上暗红色标记的参数从上到下分别改为
www.imooc.com改为bbs.imooc.com
/webdata/imooc/www改为/webdata/imooc/bbs
/webdata/imooc/www/改为/webdata/imooc/oa
#保存退出,并用同样的步骤类似的方法修改imooc_oa配置文件
#将当前目录切换到虚拟主机“当前已启用”配置目录
$ cd /etc/apache2/sites-enabled
#到此已经成功为bbs.imooc.com和oa.imooc.com两个新系统配置了虚拟主机
$ ln –s ../sites-available/imooc_bbs imooc_bbs
$ ln –s ../sites-available/imooc_oa imooc_oa
#最后重启apache让配置生效即可
$ shdo service apache2 restart
 
 
如果你有不明白的地方,可以将你做完的练习题发送到[email protected]这个邮箱,邮件的主题请用“慕课网用户名+Ubuntu练习题”的格式,在邮件正文中告诉我们您的诉求,最后不要忘了在附件中附上你完成的练习题,badguy会对你的练习题做统一解答哦。
 
 
 

你可能感兴趣的:(LAMP环境搭建)