contos LINUX搭建LAMP筆記

LINUX搭建LAMP筆記

.YUM:Yum(全稱爲 Yellow dog Updater, Modified)是一個在Fedora和RedHat以及CentOS中的Shell前端軟件包管理器。基於RPM包管理,可以從指定的服務器自動下載RPM包而且安裝,能夠自動處理依賴性關係,而且一次安裝全部依賴的軟件包,無須繁瑣地一次次下載、安裝。php

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
enter description here


看到此圖片說明apache安裝成功node

 

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++ 在線安裝。mysql

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
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倉庫c++

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

本地克隆倉庫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

代碼自動部署web

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查看錯誤日誌

可能預見的錯誤

一、fatal: /usr/libexec/git-core/git-pull cannot be used without a working tree.

同步的項目文件夾沒有創建---------------解決辦法:在www下創建project項目文件夾

二、fatal: Not a git repository (or any of the parent directories): .git

項目文件裏沒有git初始化------------------解決辦法:在www路徑下執行git clone /alidata/gitroot/project.git

三、error: cannot open .git/FETCH_HEAD: Permission denied

git在項目目錄沒有寫入權限---------------解決辦法:修改全部者以及權限 chown -R phper:git project / chmod -R 774 project

四、每次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=1redis

相關文章
相關標籤/搜索