Shan

老掉牙的LAMP编译安装
实验环境 操作系统:Centos6.5 MySQL版本:5.6.25 Apache版本:2.4 PHP版本:5.6...
扫描右侧二维码阅读全文
15
2018/07

老掉牙的LAMP编译安装

实验环境

操作系统:Centos6.5
MySQL版本:5.6.25
Apache版本:2.4
PHP版本:5.6.23

一、编译安装mysql

1)准备环境

添加用户
# useradd -s /sbin/nologin -M mysql

安装依赖包
# yum install -y cmake gcc ncurses-devel openssl-devel

创建存放数据目录(可做可不做)
# mkdir -p /mysql5.6.25/{baseDir,dataDir}

解压文件
# tar xf mysql-5.6.25.tar.gz
# cd mysql-5.6.25

2)配置

# vim mysql.sh
...
#!/bin/bash                 
cmake . \                   
-DCMAKE_INSTALL_PREFIX=/mysql5.6.25/baseDir \
-DMYSQL_DATADIR=/mysql5.6.25/dataDir \
-DMYSQL_TCP_PORT=3307 \   
-DMYSQL_UNIX_ADDR=/mysql5.6.25/baseDir/mysql.sock
-DENABLED_LOCAL_INFILE=1 \
-DWITH_INNOBASE_STORAGE_ENGINE=1 \
-DSYSCONFDIR=/mysql5.6.25/baseDir/etc \
-DDEFAULT_CHARSET=utf8 \   
-DDEFAULT_COLLATION=utf8_general_ci \
-DWITH_EXTRA_CHARSETS=all

# sh mysql.sh

3)编译 安装

make && make install

4)初始化

修改属主属组
# chown -R mysql.mysql /mysql5.6.25/

初始化
# /mysql5.6.25/baseDir/scripts/mysql_install_db --user=mysql --basedir=/mysql5.6.25/baseDir/ --datadir=/mysql5.6.25/dataDir/

5)启动

复制启动脚本到/etc/init.d
# cp /mysql5.6.25/baseDir/support-files/mysql.server /etc/init.d/mysqld

启动MySQL服务
# /etc/init.d/mysql start

6)安全配置

配置环境变量
# echo "export PATH=$PATH:/mysql5.6.25/baseDir/bin/">>/etc/profile
# source /etc/profile

安全配置
# /mysql5.6.25/baseDir/bin/mysql_secure_installation

二、编译安装apache

1)准备环境

# yum install -y pcre-devel 

编译安装apr 
# tar xf apr-1.5.2.tar.bz2
# cd apr-1.5.2
# ./configure --prefix=/usr/local/apr
# make && make install

编译安装apr-util
# tar xf apr-util-1.5.4.tar.bz2
# cd apr-util-1.5.4
# ./configure --with-apr=/usr/local/apr/bin/apr-1-config
# make && make install

将库添加到系统搜索列表
# echo "/usr/local/apr/lib/" > /etc/ld.so.conf.d/lamp.conf
# ldconfig

2)配置

解压文件
# tar xf httpd-2.4.12.tar.bz2
# cd httpd-2.4.12

# vim apache.sh
...
#!/bin/bash
./configure \
--enable-modules=all \
--enable-mods-shared=all \
--enable-so \
--enable-rewrite \
--with-mpm=prefork \
--with-apr=/usr/local/apr/bin/apr-1-config \
--with-apr-util=/usr/local/apr/bin/apu-1-config

3)安装

# make && make install

三、编译安装php

1)准备环境

# yum install -y gd-devel libcurl-devel libxml2-devel

# tar xf php-5.6.23.tar.xz
# cd php-5.6.23

2)配置

# vim php.sh
...
#!/bin/bash
./configure \
--with-apxs2=/usr/local/apache2/bin/apxs \
--with-mysql=/mysql5.6.25/baseDir \
--with-mysqli=/mysql5.6.25/baseDir/bin/mysql_config \
--with-pdo-mysql=/mysql5.6.25/baseDir \
--with-zlib \
--with-zlib-dir=/mysql5.6.25/baseDir/zlib \
--with-curl \
--enable-zip \
--with-gd \
--with-freetype-dir \
--with-jpeg-dir \
--with-png-dir \
--enable-sockets \
--with-xmlrpc \
--enable-soap \
--enable-opcache \
--enable-mbstring \
--enable-mbregex \
--enable-pcntl \
--enable-shmop \
--enable-sysvmsg \
--enable-sysvsem \
--enable-sysvshm \
--enable-calendar \
--enable-bcmath

# sh php.sh

3)安装

# make && make install

四、整合LAMP

1)修改apache主配置文件

# vim /usr/local/apache2/conf/httpd.conf
...
ServerName www.example.com:80     //打开服务器名
LoadModule negotiation_module modules/mod_negotiation.so     //开启此模块的支持
Include conf/extra/httpd-languages.conf     //打开该选项,使子配置文件生效

找到
LoadModule php5_module        modules/libphp5.so
在这行下面添加如下两行内容
AddHandler php5-script   .php
AddType text/html  .php

//在默认主页加上index.php,并放在index.html前,意为支持php的首页文件
<IfModule dir_module>
    DirectoryIndex index.php index.html
</IfModule>

修改子配置文件,优先支持中文
# vim /usr/local/apache2/conf/extra/httpd-languages.conf
DefaultLanguage zh-CN     //开启该选项,设置中文为默认语言

2)使php能连接mysql

复制配置文件
# cp /root/soft/php-5.6.23/php.ini-production /usr/local/lib/php.ini
# vim /usr/local/lib/php.ini
...
[MySQL]
mysql.default_port = 3307        改成对应的mysql的端口
mysql.default_socket = /mysql5.6.25/baseDir/mysql.sock        对应的socket文件地址

[MySQLi]
mysqli.default_port = 3307
mysqli.default_socket = /mysql5.6.25/baseDir/mysql.sock

五、测试

# vim /usr/local/apache2/htdocs/index.php
<?php
        phpinfo();
?>

六、部署web应用

1)编辑配置文件

# vim /usr/local/apache2/conf/httpd.conf
...
Include conf/extra/httpd-vhosts.conf //打开对虚拟主机的支持

# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf
...
<VirtualHost *:80>         
    ServerAdmin webmaster@dummy-host.example.com
    DocumentRoot "/www/admin/"
    ServerName www.mysqladmin.cc
    #ServerAlias www.dummy-host.example.com
    ErrorLog "logs/mysqladmin.cc-error_log"
    CustomLog "logs/mysqladmin.cc-access_log" common
</VirtualHost>             

<VirtualHost *:80>         
    ServerAdmin webmaster@dummy-host2.example.com
    DocumentRoot "/www/myblog/"
    ServerName www.myblog.net
    ErrorLog "logs/myblog.net-error_log"
    CustomLog "logs/myblog.net-access_log" common
</VirtualHost>

2)上传web应用

可使用xftp上传到网站目录

3)配置web程序

-------------phpMyadmin程序部分-------------
查看当前路径
# pwd
/www/myblog

解压程序
# unzip phpMyAdmin-4.4.11-all-languages.zip

进入程序目录
# cd phpMyAdmin-4.4.11-all-languages/

将程序所有文件移动到网站目录
# mv * ../

复制配置文件并修改
# cp /www/admin/config.sample.inc.php /www/admin/config.inc.php
# vim /www/admin/config.inc.php
...
/* Authentication type */
$cfg['Servers'][$i]['auth_type'] = 'cookie';
/* Server parameters */
$cfg['Servers'][$i]['host'] = 'localhost';
//将上面一行的"localhost"改为"127.0.0.1"
$cfg['Servers'][$i]['connect_type'] = 'tcp';
$cfg['Servers'][$i]['compress'] = false;
$cfg['Servers'][$i]['AllowNoPassword'] = false;
...
--------------------------------------------------

-------------------wordpress程序部分-------------------
查看当前路径
# pwd
/www/myblog

解压程序
# tar xf wordpress-4.7.3-zh_CN.tar.gz

进入程序目录
# cd wordpress/

将程序所有文件移动到网站目录
# mv * ../

启动数据库
# /etc/init.d/mysqld start
Starting MySQL                                             [  OK  ]

创建wordpress数据库
# mysql -uroot -p123456
mysql> create database wordpress;
Query OK, 1 row affected (0.14 sec)

复制配置文件并修改
# cp /www/myblog/wp-config-sample.php /www/myblog/wp-config.php
# vim /www/myblog/wp-config.php
...
// ** MySQL 设置 - 具体信息来自您正在使用的主机 ** //
/** WordPress数据库的名称 */
define('DB_NAME', 'wordpress');

/** MySQL数据库用户名 */
define('DB_USER', 'root');

/** MySQL数据库密码 */
define('DB_PASSWORD', '123456');

/** MySQL主机 */
define('DB_HOST', '127.0.0.1');

/** 创建数据表时默认的文字编码 */
define('DB_CHARSET', 'utf8');

/** 数据库整理类型。如不确定请勿更改 */
define('DB_COLLATE', '');
...
以上WordPress数据库的名称、MySQL数据库密码、MySQL主机这三部分需要修改为自己设定的内容
--------------------------------------------------

4)修改网站目录权限

# chown -R daemon.daemon /www/

七、测试验证(windowds)

1)修改本机hosts文件

文件位置
# C:\Windows\System32\drivers\etc\hosts

添加如下两行内容:
192.168.235.158 www.mysqladmin.cc
192.168.235.158 www.myblog.net

保存退出

2)测试

浏览器访问 www.mysqladmin.cc
出现下图表示此站点部署成功
phpMyadmin.png

浏览器访问 www.myblog.net
出现下图表示此站点部署成功,站点标题等信息可自行填写
WordPress.png

Last modification:August 15th, 2018 at 08:01 pm

Leave a Comment