LINUX搭建LAMP笔记

.YUM:Yum(全称为 Yellow dog Updater, Modified)是一个在Fedora和RedHat以及CentOS中的Shell前端软件包管理器。基于RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软件包,无须繁琐地一次次下载、安装。

1.网络环境检测

centos7.2的网络配置:

vim /etc/sysconfig/network-scripts/ifcfg-eno16777736

参考以下网络配置:

TYPE=Ethernet
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
NAME=eno16777736
UUID=a90b6241-89da-450a-9742-d5b186a17084
DEVICE=eno16777736
ONBOOT=yes
IPADDR0=192.168.0.228
PREFIXO0=24
GATEWAY0=192.168.0.1
DNS1=192.168.0.1 配置完毕后,使用 systemctl restart network.service 重启网络,然后 ping www.baidu.com 测试是否网络连接通畅。

2.安装LAMP

1.安装apache

1.更新yum 源(包管理)
`yum update`
2.安装:apache
yum install -y httpd
运行:/bin/systemctl start httpd.service  执行完运行命令之后是看不到效果的,这时候再输入查看
 apache服务状态命令来查看服务是否已经启动:     systemctl stop httpd.service #停止apache 或者是:service httpd stop systemctl restart httpd.service #重启apache 或者是:service httpd restart systemctl enable httpd.service #设置apache开机启动 或者是:service httpd enable
    
 测试apache服务是否正常开启,在我们本地浏览器里输入云服务 器的公网ip,我这里以118.25.14.210为例

enter description here

看到此图片说明apache安装成功

2.安装mysql

1.rpm -qa | grep mysql  // 这个命令就会查看该操作系统上是否已经安装了mysql数据库
通过这个命令查看该系统中是否已经安装了mysql, 可以看到我的系统比较干净,没有安装任何版本的mysql,如果你系统有安装,那可以选择进行卸载 2. rpm -e mysql  // 普通删除模式 3. rpm -e --nodeps mysql  // 强力删除模式,如果使用上面命令删除时,提示有依赖的 其它文件,则用该命令可以对其进行强力删除 4.安装
wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
    rpm -ivh mysql-community-release-el7-5.noarch.rpm
    yum install mysql-community-server
    成功安装之后重启mysql服务    
    初次安装mysql是root账户是没有密码的
    设置密码的方法:     输入mysql -uroot进入mysql数据库
      mysql> set password for ‘root’@‘localhost’ = password('newpasswd');
      mysql> quit        远程授权连接mysql
所有权限
    mysql>grant all privileges on *.* to root@"%" identified by "123456" with grant option;
//只读权限
grant select on *.* to root@"%" identified by "123456";
    mysql>FLUSH PRIVILEGES; 刷新配置

提示:Linux软件编译安装都需要依赖两个安装包 gcc gcc-c++ make 可使用 yum -y install gcc gcc-c++ 在线安装。

3.安装php

卸载php
rpm -qa | grep php
按依赖顺序进行删除
rpm -e php-fpm-5.3.3-22.el6.x86_64 rpm-e php-pdo-5.3.3-22.el6.x86_64 rpm -e php-pear-1.9.4-4.el6.noarch rpm-e php-cli-5.3.3-22.el6.x86_64 rpm -e php-5.3.3-22.el6.x86_64 rpm-e php-xml-5.3.3-22.el6.x86_64 rpm -e php-gd-5.3.3-22.el6.x86_64 rpm-e php-common-5.3.3-22.el6.x86_64 1.通过安装包方式安装
下载需要的php 版本 http://www.php.net/downloads.php(.tar.gz)
上传到 /usr/local/src 目录 解压 文件 tar_zxvf php-7.0.30.tar.gz
编译安装
make && make intsall 2.
通过yum 源安装
yum -y install php 安装(5,4版本) 安装php7 首先要更新yum源,不然肯定是老版本,一般都在5.6及以下,但是php7都出来好久了,性能提升50%以上!
rpm -Uvh https://dl.fedoraproject.org/pub/epel/epel-release-latest-7.noarch.rpm
rpm -Uvh https://mirror.webtatic.com/yum/el7/webtatic-release.rpm 安装php7及扩展
yum install php70w
yum install php70w-common php70w-fpm php70w-opcache php70w-gd php70w-mysqlnd php70w-mbstring php70w-pecl-redis php70w-pecl-memcached php70w-devel 安装其他扩展 譬如你要加装xml,那么可以直接,别怀疑就是这么简单: yum install php70w-xml php -v

enter description here
php -m 查看所有

4.虚礼目录配置

1.设置系统自动检测index.php文件
编辑httpd的配置文件(/etc/httpd/conf/httpd.conf) 2.在/etc/httpd/conf/conf.d 下新建一个.conf格式文件
最好不要直接修改httd.conf
写入解析到的目录
<VirtualHost *:80>
DocumentRoot 目录地址
ServerName 域名
</VirtualHost> 重启httpd (service httpd restart) 3.开启路由重写 4.修改/etc/httpd/conf/httpd.conf
<Directory />
AllowOverride none
Require all denied
</Directory>
改为
<Directory />
AllowOverride all
Require all denied
</Directory> 重启httpd

5.搭建git仓库

1.安装git
yum install -y git 2.搭建git仓库 创建一个git用户组和用户,用来运行git服务:
groupadd git
useradd git -g git
passwd git #参数是用户名
最好切换到git用户 不然后面新建的git仓库都要改权限 烦烦烦!! $ su - git 如何生成密钥:http://blog.csdn.net/permanent_2008/article/details/73839384 备注:下边虚线内容为多余内容,只是留着存档而已。于本教程没有关系 添加证书之前,还要做这么一步: Git服务器打开RSA认证 。在Git服务器上首先需要将/etc/ssh/sshd_config中将RSA认证打开, 即: 1.RSAAuthentication yes 2.PubkeyAuthentication yes 3.AuthorizedKeysFile .ssh/authorized_keys 这里我们可以看到公钥存放在.ssh/authorized_keys文件中。 所以我们在/home/git下创建.ssh目录,然后创建authorized_keys文件,并将刚生成的公钥导入进去。 然后再次clone的时候,或者是之后push的时候,就不需要再输入密码了: Zhu@XXX/E/testgit/8.34 $ git clone git@192.168.8.34:/data/git/learngit.git Cloning into 'learngit'... warning: You appear to have cloned an empty repository. Checking connectivity... done. =============================== 收集所有需要登录的用户的公钥,就是他们自己的id_rsa.pub文件,把所有公钥导入到/home/git/.ssh/authorized_keys文件里,一行一个。
$ cd /home/git/
$ mkdir .ssh #新建文件夹
$ chmod 700 .ssh
$ touch .ssh/authorized_keys #新建文件
$ chmod 600 .ssh/authorized_keys

初始化Git仓库

$ cd /home/git
$ git init --bare test.git
Initialized empty Git repository in /home/git/test.git/

本地克隆仓库

$ git clone git@your-ip:test.git
Cloning into 'test'...
warning: You appear to have cloned an empty repository.
Checking connectivity... done.
your-ip 为您 Git 所在服务器 ip

代码自动部署

cd /home/git/test.git
cd hooks
//这里我们创建post-receive文件
#!/bin/sh
unset GIT_DIR
DeployPath="/alidata/www/project"
LogPath="/alidata/gitroot/project.git/hooks" echo -e "\n================= `date +"%Y-%m-%d %H:%M:%S"` ===============\n" >> $LogPath/gitsync.log 2>&1
cd $DeployPath #git stash
#先拉取再合并
git pull origin master >> $LogPath/gitsync.log 2>&1 #强制与远程服务器同步,不与本地合并,只能通过提交的客户端提交的方式修改代码。
#git fetch --all
#git reset --hard origin/master #time=`date`
#echo "web server pull at webserver at time: $time."
echo "================================================" >> $LogPath/gitsync.log 2>&1 更改post-receive的所有者和权限
chmod -R 774 post-receive
chown phper:git post-receive 最后在www下
mkdir project
chown -R phper:git project
chmod -R 774 project
cd /alidata/www
git clone /gitroot/project.git 好了git的同步就弄好了 如果同步用不了,打开hooks/gitsync.log查看错误日志 可能预见的错误 1、fatal: /usr/libexec/git-core/git-pull cannot be used without a working tree. 同步的项目文件夹没有建立---------------解决办法:在www下建立project项目文件夹 2、fatal: Not a git repository (or any of the parent directories): .git 项目文件里没有git初始化------------------解决办法:在www路径下执行git clone /alidata/gitroot/project.git 3、error: cannot open .git/FETCH_HEAD: Permission denied git在项目目录没有写入权限---------------解决办法:修改所有者以及权限 chown -R phper:git project / chmod -R 774 project 4、每次pull push的时候还是要输入密码
image.png 秘钥没有起作用-----------------------------解决办法:/var/log/secure查看一下日志,是否是.ssh的权限问题
chmod 700 .ssh
chmod 600 .ssh/authorized_keys

搭建SVN
https://blog.csdn.net/baidu_30000217/article/details/51396016?locationNum=1

contos LAMP环境搭建的更多相关文章

  1. lamp环境搭建(ubuntu)

    系统:Ubuntu14.04 方法一.最简单的在线安装 (参考网址:http://os.51cto.com/art/201307/405333.htm) 具体过程: [1]打开终端,执行命令 # su ...

  2. LAMP环境搭建教程(原创)

    学习PHP脚本编程语言之前,必须先搭建并熟悉开发环境,开发环境有很多种,例如LAMP.WAMP.MAMP等.这里我介绍一下LAMP环境的搭建,即Linux.Apache.MySQL.PHP环境. 一. ...

  3. LAMP环境搭建教程

    原文:LAMP环境搭建教程 学习PHP脚本编程语言之前,必须先搭建并熟悉开发环境,开发环境有很多种,例如LAMP.WAMP.MAMP等.这里我介绍一下LAMP环境的搭建,即Linux.Apache.M ...

  4. 转载自php100中文网 centos下lamp 环境搭建

    学习PHP脚本编程语言之前,必须先搭建并熟悉开发环境,开发环境有很多种,例如LAMP.WAMP.MAMP等.这里我介绍一下LAMP环境的搭建,即Linux.Apache.MySQL.PHP环境. 一. ...

  5. LAMP 环境搭建之源码包编译安装

    mysql用的二进制包安装. Apache php 用的源码包 mysql版本5.5.46    Apache版本2.4.7  PHP版本:5.5 mysql安装部分参考了阿铭linux的内容. 这是 ...

  6. Lamp环境搭建Linux CentOS6.5编译安装mysql5.6

    经典web开发组合Lamp环境搭建之mysql安装详解 安装前准备 通过rpm命令检查centos上是否已经安装mysql,然后卸载已经存在的mysql版本 [root@localhost src]# ...

  7. ubuntu上lamp环境搭建

    首先,介绍个彻底删除linux已经安装的软件的方法. sudo apt-get purge mysql-server mysql-client mysql-common mysql-server-5. ...

  8. linux的基本操作(LAMP环境搭建)

    LAMP 环境搭建 经过前部分章节的学习,你已经掌握了linux的基础知识了.但是想成为一名系统管理员恐怕还有点难度,因为好多单位招聘这个职位的时候都要求有一定的工作经验.然而真正的经验一天两天是学不 ...

  9. lamp环境搭建(centos6.9+apache2.4+mysql5.7+php7.1)

    lamp环境搭建(centos6.9+apache2.4+mysql5.7+php7.1) 安装前准备:CentOS 6.9 64位 最小化安装 yum install -y make gcc gcc ...

随机推荐

  1. poj3243 Clever Y[扩展BSGS]

    Clever Y Time Limit: 5000MS   Memory Limit: 65536K Total Submissions: 8666   Accepted: 2155 Descript ...

  2. iOS侧面加shadow

    UIBezierPath *shadowPath = [UIBezierPath bezierPathWithRect:_bgView.bounds]; _bgView.layer.masksToBo ...

  3. IIS7发布wcf服务遇到的问题

    如果没有上图所列出的asp.net 40,请在cmd中运行:C:\Windows\Microsoft.NET\Framework\V4.0.30319\aspnet_regiis -i 注:C:\Wi ...

  4. mongoDB之find()

    一.find方法 db.collection_name.find();查询 查询所有结果 1) db.users.find();类似于select * from users; 指定返回那些列(键) 2 ...

  5. 巨蟒python全栈开发-第4天 列表&元组&range

    今日内容大纲 1. 什么是列表 定义: 能装对象的对象 在python中使用[]来描述列表, 内部元素用逗号隔开. 对数据类型没有要求 列表存在索引和切片. 和字符串是一样的. 2. 相关的增删改查操 ...

  6. ubuntu 安装低版本firefox

    firefox 57以后很多插件不支持了,ubuntu16自带火狐版本59,想换回56. 1.下载想换回的版本 https://ftp.mozilla.org/pub/mozilla.org/fire ...

  7. Spoken English Practice( let me just pull over(pull,give))

    绿色:连读:                  红色:略读:               蓝色:浊化:               橙色:弱读     下划线_为浊化 口语蜕变(2017/6/26) ...

  8. 实践中需要了解的cpu特性

    目录 分段机制 特权级检查 GDT和LDT 堆栈切换 分页机制 中断 分段机制 实模式中cs是一个实实在在的段首地址,ip为cs所指向段的偏移,所以cs<<4+ip是当前cpu执行的指令. ...

  9. 我的Android进阶之旅------>RxJava学习资料汇总

    在响应式编程中,应该牢记以下两点: everything is a stream(一切皆流) don't break the chain(不要打断链式结构) 记住,可观测序列就像一条河,它们是流动的. ...

  10. 006-基于hyperledger fabric1.4( 官方文档)编写第一个应用【外部nodejs调用】

    一.概述 官方原文地址 Writing Your First Application如果对fabric网络的基本运行机制不熟悉的话,请看这里. 注意:本教程是对fabric应用以及如何使用智能合约的简 ...