随身笔记
随身笔记

centOS 6.x一键安装lamp环境

linux centos ubuntu开机自动启动

系统需求

  • 系统支持:CentOS/Redhat/Fedora
  • 内存要求:≥ 512M
  • 硬盘要求:2GB以上的剩余空间
  • 服务器必须配置好软件源和可连接外网
  • 必须具有系统 root 权限
  • 建议使用干净系统全新安装

支持组件

  • 支持 PHP 自带所有组件
  • 支持 MySQL、MariaDB、SQLite 数据库
  • 支持 oci8 (可选安装)
  • 支持 pure-ftpd (可选安装)
  • 支持 memcached (可选安装)
  • 支持 ImageMagick (可选安装)
  • 支持 GraphicsMagick (可选安装)
  • 支持 Zend Guard Loader (可选安装)
  • 支持 ionCube PHP Loader (可选安装)
  • 支持 XCache ,Zend OPcache (可选安装)
  • 自助升级 Apache,PHP,phpMyAdmin,MySQL 或 MariaDB 至最新版本
  • 命令行新增虚拟主机,操作简便
  • 一键卸载

 

1,安装依赖包

yum -y install wget screen unzip
screen -S lamp

 

2,下载安装包

wget -O lamp.zip https://github.com/teddysun/lamp/archive/master.zip
unzip lamp.zip
cd lamp-master/
chmod +x *.sh

 

3,开始安装

./lamp.sh 2>&1 | tee lamp.log

安装的过程中选择你需要安装的选项即可,同时设置开机自动启动

chkconfig httpd on   //apache开机自动启动
chkconfig mysqld on  //mysql开机自动启动

关于chkconfig开机自动启动,要保证以上命令能使用就必须满足以下条件:
1.确保/etc/rc.d/init.d/mysqld 存在,可以使用service mysqld start能够正常启动 
2.把mysqld托管给chkconfig:chkconfig --add mysqld 
3.执行chkconfig mysqld on
4.查看是否设置成功:chkconfig --list mysqld
5.如果 0:off   1:off   2:on    3:on    4:on    5:on    6:off  //2345都是on表示设置成功
6.如果没有成功手动设置一下:chkconfig --level 2345 mysqld on
http://blog.csdn.net/chtdsl/article/details/8644788

 

 

4,安装其他php模块

下载包含所有安装包的源码(230MB)来安装
wget http://lamp.teddysun.com/lamp.tar.gz
tar -zxf lamp.tar.gz
cd lamp/
chmod +x *.sh

根据你需要安装的模块执行以下命令

  1. (可选安装)执行脚本 xcache.sh 安装 Xcache

./xcache.sh

  1. (可选安装)执行脚本 oci8_oracle11g.sh 安装 oci8 扩展以及 oracle-instantclient11.2

./oci8_oracle11g.sh

  1. (可选安装)执行脚本 pureftpd.sh 安装 pure-ftpd-1.0.42

./pureftpd.sh

  1. (可选安装)执行脚本 ZendGuardLoader.sh 安装 Zend Guard Loader

./ZendGuardLoader.sh

  1. (可选安装)执行脚本 ioncube.sh 安装 ionCube PHP Loader

./ioncube.sh

  1. (可选安装)执行脚本 ImageMagick.sh 安装 imagick 的 PHP 扩展

./ImageMagick.sh

  1. (可选安装)执行脚本 GraphicsMagick.sh 安装 gmagick 的 PHP 扩展

./GraphicsMagick.sh

  1. (可选安装)执行脚本 opcache.sh 安装 Zend OPcache 的 PHP 扩展

./opcache.sh

  1. (可选安装)执行脚本 memcached.sh 安装 memcached 及 memcached 的 PHP 扩展

./memcached.sh

  1. (可选安装)执行脚本 mongodb.sh 安装 MongoDB 的 PHP 扩展

./mongodb.sh

  1. (升级脚本)执行脚本 upgrade_php.sh 将会升级 PHP 和 phpMyAdmin 至最新版本。

./upgrade_php.sh 2>&1 | tee upgrade_php.log

  1. (升级脚本)执行脚本 upgrade_mysql.sh 将会升级 MySQL 至已安装版本的最新版本。
    升级之前会自动备份全部数据库,在升级完成之后再将备份恢复。

./upgrade_mysql.sh 2>&1 | tee upgrade_mysql.log

  1. (升级脚本)执行脚本 upgrade_mariadb.sh 将会升级 MariaDB 至已安装版本的最新版本。
    升级之前会自动备份全部数据库,在升级完成之后再将备份恢复。

./upgrade_mariadb.sh 2>&1 | tee upgrade_mariadb.log

  1. (升级脚本)执行脚本 upgrade_apache.sh 将会升级 Apache 至已安装版本的最新版本。

./upgrade_apache.sh 2>&1 | tee upgrade_apache.log

 

 

使用提示

lamp add(del,list) 创建(删除,列出)虚拟主机。
lamp ftp(add|del|list) 创建(删除,列出)ftp 用户。
lamp uninstall 一键删除 LAMP(切记,删除之前请注意备份数据!)

程序目录

  • MySQL 安装目录: /usr/local/mysql
  • MySQL 数据库目录:/usr/local/mysql/data(默认,安装时可更改路径)
  • MariaDB 安装目录: /usr/local/mariadb
  • MariaDB 数据库目录:/usr/local/mariadb/data(默认,安装时可更改路径)
  • PHP 安装目录: /usr/local/php
  • Apache 安装目录: /usr/local/apache

命令一览

  • MySQL 或 MariaDB 命令

/etc/init.d/mysqld(start|stop|restart|status)

  • Apache 命令

/etc/init.d/httpd(start|stop|restart|status)

  • Memcached 命令

/etc/init.d/memcached (start|stop|restart|status)

网站根目录

默认的网站根目录: /data/www/default

 

默认信息

LAMP 使用方法:

lamp (add, del, list):创建,删除,列出虚拟主机
LAMP 升级方法:

执行脚本:./upgrade.sh
LAMP 卸载方法:

执行脚本:./uninstall.sh
程序默认安装目录:

Apache:/usr/local/apache
PHP:/usr/local/php
MySQL:/usr/local/mysql
MariaDB:/usr/local/mariadb
Percona:/usr/local/percona
可用命令一览:

Apache:/etc/init.d/httpd (start|stop|restart|status)
MySQL:/etc/init.d/mysqld (start|stop|restart|status)
MariaDB:/etc/init.d/mysqld (start|stop|restart|status)
Percona:/etc/init.d/mysqld (start|stop|restart|status)
Memcached:/etc/init.d/memcached (start|stop|restart)
Redis-server:/etc/init.d/redis-server (start|stop|restart)

修改mysql严格模式路径:
/usr/local/mysql/my.cnf

网站默认根目录:

网站默认根目录:/data/www/default

http://qiaobook.cn/?post=6

 

————————-添加同一个ip不同端口站点———————————–

编辑文件:/usr/local/apache/conf/extra/httpd-vhosts.conf,添加以下代码(路径根据情况修改相应路径)

<VirtualHost *:8180>
 ServerAdmin localhost:8180
 DocumentRoot "/data/www/xgllseo"
 ServerName localhost:8180
 #ErrorLog "/data/wwwlog/wwww.avalon123.com/error.log"
 #CustomLog "/data/wwwlog/wwww.avalon123.com/com-access_log" common
 <Directory /data/www/xgllseo>
Options +Includes -Indexes
AllowOverride All
Order Deny,Allow
Require all granted
</Directory>
</VirtualHost>

 

编辑文件:/usr/local/apache/conf/httpd.conf,添加一个8180端口

Listen 45.32.197.199:80 
Listen 45.32.197.199:8180

 

重启apache

/etc/init.d/httpd restart

 

 

——————–为网站添加SSL———————-

1,首先要获得ssl证书,到网站https://github.com/letsencrypt/letsencrypt具体教程参考网站内容。

1: Spin up a temporary webserver (standalone)
2: Place files in webroot directory (webroot)
//选择 webroot

 

输入你的域名

Please enter in your domain name(s) (comma and/or space separated)  (Enter 'c'
to cancel):www.xgllseo.com

 

输入网站路径

Input the webroot for test.testnode.com: (Enter 'c' to cancel):/data/www/xgllseo

 

申请成功就有这样提示:

Waiting for verification...
Cleaning up challenges
Generating key (2048 bits): /etc/letsencrypt/keys/0000_key-certbot.pem
Creating CSR: /etc/letsencrypt/csr/0000_csr-certbot.pem
 
IMPORTANT NOTES:
 - Congratulations! Your certificate and chain have been saved at
   /etc/letsencrypt/live/www.xgllseo.com/fullchain.pem. Your cert
   will expire on 2017-06-18. To obtain a new or tweaked version of
   this certificate in the future, simply run certbot again. To
   non-interactively renew *all* of your certificates, run "certbot
   renew"
 - If you like Certbot, please consider supporting our work by:
 
   Donating to ISRG / Let's Encrypt:   https://letsencrypt.org/donate

 

查看证书所在目录,执行certbot certificates可以发现证书和私钥都已经在/etc/letsencrypt/live这个目录下了

$ certbot certificates
Saving debug log to /var/log/letsencrypt/letsencrypt.log
​
-------------------------------------------------------------------------------
Found the following certs:
  Certificate Name: www.xgllseo.com
    Domains: www.xgllseo.com
    Expiry Date: 2017-06-18 04:09:00+00:00 (VALID: 87 days)
    Certificate Path: /etc/letsencrypt/live/www.xgllseo.com/fullchain.pem
    Private Key Path: /etc/letsencrypt/live/www.xgllseo.com/privkey.pem
---------------------------------------------------------------------

 

2,成功申请到证书后证书基本在/etc/letsencrypt/live/xgllseo.com目录下,分别记录fullchain.pem、privkey.pem的路径。

3,编辑/usr/local/apache/conf/extra/httpd-ssl.conf,添加刚刚那两个证书

<VirtualHost *:443>

# General setup for the virtual host
DocumentRoot "/data/www/xgllseo"
#DirectoryIndex index.php index.html index.htm
ServerName www.xgllseo.com:443
#ServerAdmin you@example.com
#ErrorLog "/usr/local/apache/logs/error_log"
#TransferLog "/usr/local/apache/logs/access_log"

SSLEngine on
 
SSLCertificateFile /etc/letsencrypt/live/www.xgllseo.com/fullchain.pem
SSLCertificateKeyFile /etc/letsencrypt/live/www.xgllseo.com/privkey.pem

 

继续修改,给443端口访问赋值权限

<Directory "/data/www/xgllseo">  #修改相应路径
 SSLOptions +StdEnvVars
 #添加以下3条代码
 Options Indexes FollowSymLinks
 AllowOverride None
 Require all granted
</Directory>

 

4,编辑/usr/local/apache/conf/httpd.conf

# Secure (SSL/TLS) connections
Include conf/extra/httpd-ssl.conf  #把 此代码前面的#删除
#

如果访问https://www.xx.com的时候出现 bad require的字样那么在最底部继续添加

LimitRequestLine 40940
LimitRequestFieldSize 40940

 

5,做301跳转,即使访问http://www.xx.com也自动跳转为https://www.xx.com页面

编辑:/usr/local/apache/conf/extra/httpd-vhosts.conf

RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*) https://sdeno.com$1 [L,R=301]
</VirtualHost>

 

随身笔记

centOS 6.x一键安装lamp环境
linux centos ubuntu开机自动启动 系统需求 系统支持:CentOS/Redhat/Fedora 内存要求:≥ 512M 硬盘要求:2GB以上的剩余空间 服务器必须配置好软件源和可连接外网 必须具…
扫描二维码继续阅读
2017-03-03