最新消息:XAMPP默认安装之后是很不安全的,我们只需要点击左方菜单的 "安全"选项,按照向导操作即可完成安全设置。

xampp快速部署 LAMP环境 phper了解下

XAMPP教程 中文小张 22浏览 0评论

服务器信息
8核 CPU 型号 Intel(R) Xeon(R) CPU E7-4809 v3 @ 2.00GHz
内存 16G
硬盘 300G
带宽 50M
当前操作系统内核信息
Linux guanwang-app-01 3.10.0-327.el7.x86_64 #1 SMP Thu Nov 19 22:10:57 UTC 2015 x86_64 x86_64 x86_64 GNU/Linux

当前操作系统版本信息
Linux version 3.10.0-327.el7.x86_64 (builder@kbuilder.dev.centos.org) (gcc version 4.8.3 20140911 (Red Hat 4.8.3-9) (GCC) ) #1 SMP Thu Nov 19 22:10:57 UTC 2015

当前操作系统发行版信息
CentOS Linux release 7.2.1511 (Core)


登录服务器

ssh -p 22 root@xxx.xxx.xx

查看分区 (如果已经分区请跳过此步骤)

fdisk -l

格式化分区

mkfs -t ext4 /dev/sdb

挂载创建文件夹且挂载

mkdir /data
mount /dev/sdb /data

加到开机

vim /etc/fstab
/dev/sdb /data defaults 1 2

挂在之后

文件系统 容量 已用 可用 已用% 挂载点
/dev/mapper/centos-root 18G 3.4G 15G 20% /
devtmpfs 7.8G 0 7.8G 0% /dev
tmpfs 7.8G 0 7.8G 0% /dev/shm
tmpfs 7.8G 8.6M 7.8G 1% /run
tmpfs 7.8G 0 7.8G 0% /sys/fs/cgroup
/dev/sda1 497M 126M 372M 26% /boot
tmpfs 1.6G 0 1.6G 0% /run/user/0
/dev/sdb 276G 276M 262G 1% /data


关闭防火墙 (根据自己情况来,可以不关闭)

1、关闭firewall:
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall开机启动
2、关闭SELINUX
vi /etc/selinux/config

SELINUX=enforcing #注释掉

SELINUXTYPE=targeted #注释掉

SELINUX=disabled #增加
setenforce 0 #使配置立即生效


简述 XAMPP 官网 https://www.apachefriends.org/zh_cn/download.html

XAMPP 是一款垮 windows mac limux 等平台,大约十多年——在它背后有一个巨大的社区,它是完全免费且易于安装的Apache发行版,
其中包含MariaDB、PHP、Mysql和Perl。XAMPP开放源码包的设置让安装和使用。

xampp-linux-x64-5.6.34-0-installer.run 包含下面依赖组建
Apache 2.4.33, MariaDB 10.1.32, PHP 5.6.34 ,PEAR + SQLite 2.8.17/3.7.17 + multibyte (mbstring) support, Perl 5.16.3, ProFTPD 1.3.4c, OpenSSL 1.0.2o, GD 2.0.35, Freetype2 2.4.8, libpng 1.5.26, gdbm 1.8.3, zlib 1.2.8, expat 2.0.1, Sablotron 1.0.3, libxml 2.0.1, Ming 0.4.5, Webalizer 2.23-05, pdf class 0.11.7, ncurses 5.9, pdf class 0.11.7, mod_perl 2.0.8-dev, FreeTDS 0.91, gettext 0.19.8.1, IMAP C-Client 2007e, OpenLDAP (client) 2.4.21, mcrypt 2.5.8, mhash 0.9.9.9, cUrl 7.45.0, libxslt 1.1.29, libapreq 2.13, FPDF 1.7, ICU4C Library 4.8.1, APR 1.5.2, APR-utils 1.5.4

下载

wget https://jaist.dl.sourceforge.net/project/xampp/XAMPP%20Linux/5.6.34/xampp-linux-x64-5.6.34-0-installer.run

给予权限

chmod +x xampp-linux-x64-5.6.34-0-installer.run

执行安装

./xampp-linux-x64-5.6.34-0-installer.run

有选项给予 y 同意

安装完毕之后 安装所有文件都在此目录下

/opt/lampp

命令目录

/opt/lampp/bin

命令 重启Apache和MySQL

/opt/lampp/xampp restart

单独开启 apache

/opt/lampp/xampp startapache

单独开启 mysql

/opt/lampp/xampp startmysql

单独关闭 apache

/opt/lampp/xampp stopapache

单独关闭 mysql

/opt/lampp/xampp stopmysql

命令添加到快捷方式

ln -s /opt/lampp/bin/mysqldump /usr/bin/mysqldump
ln -s /opt/lampp/bin/mysql /usr/bin/mysql
ln -s /opt/lampp/bin/php /usr/bin/php
ln -s /opt/lampp/bin/apachectl /usr/bin/apachectl

主要配置文件如下

mysql配置文件

/opt/lampp/etc/my.cnf

修改配置如下

[mysqld]
user = mysql
port=3306
socket = /opt/lampp/var/mysql/mysql.sock
skip-external-locking
key_buffer = 256M
max_allowed_packet = 1M
table_open_cache = 64
sort_buffer_size = 6M
net_buffer_length = 8K
read_buffer_size = 4M
read_rnd_buffer_size = 16M
myisam_sort_buffer_size = 64M

binlog_format = MIXED
log-bin = /data/mysql/binlog/mysql-bin.log
expire_logs_days = 20
max_binlog_size = 200M
binlog_cache_size = 64M
max_binlog_cache_size = 512M
sync_binlog = 0

新增binlog

innodb_buffer_pool_size = 500M
innodb_additional_mem_pool_size = 20M
innodb_log_file_size = 50M
innodb_log_buffer_size = 20M
innodb_flush_log_at_trx_commit = 0
innodb_lock_wait_timeout = 50

新增配置开始

event_scheduler=ON
back_log=500
wait_timeout=1800
max_connections=10000
max_user_connections=2000
thread_concurrency=64
query_cache_size=40M
thread_cache_size=64
skip-name-resolve

新增配置结束

apache 配置文件

/opt/lampp/etc/httpd.conf

配置修改如下

Listen 80
Listen 8080

DocumentRoot “/data/web”
<Directory “/data/web”>

打开注释,加载并发配置

Include etc/extra/httpd-mpm.conf

apache 相关配置目录(并发配置,虚拟主机,SSL 证书等配置)

/opt/lampp/etc/extra

并发和进程配置文件

/opt/lampp/etc/extra/httpd-mpm.conf

httpd-mpm.conf 配置修改如下

<IfModule mpm_prefork_module>
StartServers 50
MinSpareServers 50
MaxSpareServers 50
MaxRequestWorkers 2000
MaxConnectionsPerChild 20000
</IfModule>

虚拟主机配置文件

/opt/lampp/etc/extra/httpd-vhosts.conf

配置修改如下

<VirtualHost *:80>
ServerName www.XXX.org
ServerAlias djy-www.XXX.net
DocumentRoot /data/web/XXX/www/webroot
CustomLog “|/opt/lampp/bin/rotatelogs /opt/lampp/logs/wap_access_log.%y-%m-%d 1024M” combined
</VirtualHost>

<VirtualHost *:80>
ServerName wap.XXX.org
ServerAlias djy-wap.XXX.net
DocumentRoot /data/web/XXX/wap/webroot
CustomLog “|/opt/lampp/bin/rotatelogs /opt/lampp/logs/wap_access_log.%y-%m-%d 1024M” combined
</VirtualHost>

<VirtualHost *:80>
ServerName api.XXX.com
ServerAlias djy-api.XXX.net
DocumentRoot /data/web/XXX/api/webroot
CustomLog “|/opt/lampp/bin/rotatelogs /opt/lampp/logs/api_access_log.%y-%m-%d 1024M” combined
</VirtualHost>

SSL 配置文件

/opt/lampp/etc/extra/httpd-ssl.conf

扩展,例如支持 redis 库

wget http://download.redis.io/releases/redis-4.0.9.tar.gz
tar xzf redis-4.0.9.tar.gz
cd redis-4.0.9
make

开启 redis 服务器端

src/redis-server

开启 redis 客户端

redis> set foo bar
OK
redis> get foo
“bar”

PHP 支持访问 redis 即安装 phpredis2.XX 组建
wget https://github.com/nicolasff/phpredis/archive/2.2.4.tar.gz
tar zxvf phpredis-2.2.4.tar.gz #解压
cd phpredis-2.2.4 #进入安装目录

/opt/lampp/bin/phpize
./configure –with-php-config=/opt/lampp/bin/php-config #配置
make #编译
make install #安装

php.ini 加上组建

/opt/lampp/etc/php.ini
extension=”redis.so”

重启 apache

apachectl restart

查看是否安装

php -m

卸载软件方式!!!谨慎卸载

提前备份好数据库和代码后

/opt/lampp/uninstall

rm -rf /opt/lampp/


#################### 部署代码 ####################

安装 SVN

yun install svn

创建目录

mkdir -p /data/web/XXX && cd /data/web/XXX

svn co http://xxxxxxx/svn/repos/XXX/ ./

拉取之后代码目录如下

/data/web/XXX/api #接口代码
/data/web/XXX/common #公共配置
/data/web/XXX/deploy #线上部署脚本和配置
/data/web/XXX/java #Java 模块
/data/web/XXX/wap #手机端代码
/data/web/XXX/www #电脑端代码

替换 apache 配置脚本

/data/web/XXX/deploy/apache.sh

替换配置如下

服务器配置

cp /opt/lampp/etc/httpd.conf /opt/lampp/etc/httpd.conf.bak2

rm -rf /opt/lampp/etc/httpd.conf
cp /data/web/XXX/deploy/httpd_bak.conf /opt/lampp/etc/httpd.conf

域名配置

cp -i /opt/lampp/etc/extra/httpd-vhosts.conf /opt/lampp/etc/extra/httpd-vhosts.conf.bak

rm -rf /opt/lampp/etc/extra/httpd-vhosts.conf
cp /data/web/XXX/deploy/httpd-vhosts.conf /opt/lampp/etc/extra/httpd-vhosts.conf

并发优化

cp /opt/lampp/etc/extra/httpd-mpm.conf /opt/lampp/etc/extra/httpd-mpm.conf.bak

rm -rf /opt/lampp/etc/extra/httpd-mpm.conf
cp /data/web/XXX/deploy/httpd-mpm.conf /opt/lampp/etc/extra/httpd-mpm.conf

更新SVN 然后替换配置脚本

/data/web/XXX/deploy/svnup.sh

替换配置,修改权限如下

svn up /data/web/XXX

rm -rf /data/web/XXX/wap/webroot/platform/js/config.js
cp -R /data/web/XXX/deploy/conf/wap_config.js /data/web/XXX/wap/webroot/platform/js/config.js

rm -rf /data/web/XXX/www/webroot/platform/js/config.js
cp -R /data/web/XXX/deploy/conf/www_config.js /data/web/XXX/www/webroot/platform/js/config.js

rm -rf /data/web/XXX/common/
cp -R /data/web/XXX/deploy/conf/common /data/web/XXX

chmod -R 777 /data/web/XXX/api/logs
chmod -R 777 /data/web/XXX/admin/webroot/data
chmod -R 777 /data/web/XXX/admin/webroot/public/upload

文章来源:xampp中文组官网

转载请注明:XAMPP中文组官网 » xampp快速部署 LAMP环境 phper了解下