编译安装LAMP
mariadb-10.2.9-linux-x86_64.tar.gz httpd php
一.安装mariadb-10.2.9-linux-x86_64.tar.gz
1、#mkdir lamp :创建一个文件夹,存放软件的版本
2、从官网上下载httpd mariaDb PHP 到该文件夹下
3、# tar xvf mariadb-5.5.46-linux-x86_64.tar.gz -C /usr/local/
# cd /usr/local/
[root@centos7 local]# ln -sv mariadb-5.5.46-linux-x86_64 mysql (创建一个软连接,后期更新版本直接下载一个新的版本放在该目录下,直接把软连接(mysql)对应新的版本。直接升级
#新建MySQL用户,
#useradd -s /sbin/nogin -M mysql
# cd /usr/local/mysql/
[root@centos7 mysql]# chown -R root:mysql ./*(点/*) 更改属主 输组
#新建存放数据的目录
[root@centos7 mysql]# mkdir -pv /data/mysql
[root@centos7 mysql]# chown -R mysql:mysql /data/mysql/
[root@centos7 mysql]# mkdir /etc/mysql
[root@centos7 mysql]# cp support-files/my-large.cnf /etc/mysql/my.cnf
#添加以下配置文件
vim /etc/mysql/my.cnf
在这个位置下面进行添加
datadir = /data/mysql
skip_name_resolve = ON
innodb_file_per_table = ON
[root@centos7 mysql]# cp support-files/mysql.server /etc/init.d/mysqld 拷贝启动脚本到/etc下
[root@centos7 mysql]# ll /etc/init.d/mysqld
-rwxr-xr-x. 1 root root 12196 Nov 8 09:36 /etc/init.d/mysqld
[root@centos7 mysql]# chkconfig –add mysqld (加入开机启动,设置与不设置都无所谓)
[root@centos7 mysql]# mv /etc/my.cnf /etc/my.cnf.bak
必须在当前mysql目录下
[root@centos7 scripts]# ./scripts/mysql_install_db –user=mysql –datadir=/data/mysql/ (对数据初始化)
启动MySQL
# systemctl mysqld start
提示显示正确Starting MySQL.. SUCCESS!
[root@centos7 mysql]# netstat -antlp | grep 3306
tcp 0 0 0.0.0.0:3306 0.0.0.0:* LISTEN 18586/mysqld
安装httpd
准备工作
安装开发组包
安装PCRE
[root@www httpd-2.4.10]# yum install pcre-devel –y
安装apr-devel apr-util-devel openssl-devel
yum install apr-devel
yum install apr-util-devel
yum install openssl-devel
也可以编译安装apr和apr-util
(1)apr
#./configure –prefix=/usr/locaapr
#make && make install
(2) apr-util
#./configure –prefix=/usr/local/apr-util –with=/usr/local/apr
#make && make install
编译安装Httpd
#cd / lamp
#tar xvf httpd-2.4………..
#cd httpd 2.4
[root@www httpd-2.4.10]# ./configure –prefix=/usr/local/apache(安装路径,sysconf配置文件路径) –enable-so –enable-ssl –enable-rewrite –with-zlib –with-pcre –with-apr=/usr
–with-apr-util=/usr –enable-modules=most –enable-mpms-shared=all –with-mpm=prefork
也可以直接直接输入 ./configure --prefix=/usr/local/apache
(默认是Mod模块化安装也可以使用enable/factcgi的方式 –enable-ssl 后面添加–enable– cgi)
[root@www httpd-2.4.10]# make && make install
启动Httpd 2.4
[root@www apache24]# /usr/local/apache24/bin/apachectl start
[root@www apache24]# netstat -antlp | grep 80
tcp 0 0 :::80 :::* LISTEN 42294/httpd
在配置文件里面添加配置识别PHP (配置文件的尾部进行编译 注:在编译完php再操作)
#vim /usr/local/apache24/conf/httpd.d
AddType application/x-httpd-php .php
DirectoryIndex index.html index.php (添加一个首页)
新建phpinfo页面
#vim /usr/local/apache24/htdocs/test.php
phpinfo();
?>
重启下apache
# /usr/local/apache24/bin/apachectl start
源码安装php7.1.1
安装好了Apache和mariadb,我的lamp系统就差最后一个p—–php了.
安装准备
依赖包的安装: php需要php-mcrypt libmcrypt libmcrypt-devel autoconf freetype gd jpegsrc libmcrypt libpng libpng-devel libjpeg libxml2 libxml2-devel zlib curl curl-devel 这些依赖,还是用yum安装
yum -y install php-mcrypt libmcrypt libmcrypt-devel autoconf freetype gd jpegsrc libmcrypt libpng libpng-devel libjpeg libxml2 libxml2-devel zlib curl curl-devel12
准备php源码包:下载地址http://cn2.php.net/distributions/php-7.1.1.tar.gz 这是其他版本下载地址
使用wget下载
wget http://cn2.php.net/distributions/php-7.1.1.tar.gz12
或者在桌面环境下载好再上传到服务器.
创建php安装目录
mkdir /usr/local/php7112
开始安装
tar -xf php-7.1.1.tar.gz #解压源码包cd php-7.1.1 #进入源码包目录./configure --prefix=/usr/local/php71/ --with-apxs2=/usr/local/apache24/bin/apxs --enable-mbstring --with-curl --with-gd --enable-fpm --enable-mysqlnd --with-pdo-mysql=mysqlnd --with-config-file-path=/usr/local/php71/etc/ --with-mysqli=mysqlnd #配置编译参数123
–prefix 安装目录
–with-apxs2 apache文件所在目录
–enable-mbstring 支持mbstring
–with-curl 支持curl
–with-gd 支持gd
–enable-fpm 支持fpm
–enable-mysqlnd –with-pdo-mysql pdo支持
–config-file-path php配置文件搜索目录
编译安装
make && make install
配置PHP
mkdir /usr/local/php5/etc cp php.ini-production /usr/local/php5/etc/php.ini #复制php配置文件到安装目录 rm -rf /etc/php.ini #删除系统自带的配置文件 ln -s /usr/local/php5/etc/php.ini /etc/php.ini #创建配置文件软链接 vi /usr/local/php5/etc/php.ini #编辑 #找到: ;open_basedir = #修改为: open_basedir = .:/tmp/ #防止php***跨站 #找到:disable_functions = 修改为: disable_functions = passthru,exec,system,chroot,scandir,chgrp,chown,shell_exec,proc_open,proc_get_status,ini_alter,ini_alter,ini_restore,dl,openlog,syslog,readlink,symlink,popepassthru,stream_socket_server,escapeshellcmd,dll,popen,disk_free_space,checkdnsrr,checkdnsrr,getservbyname,getservbyport,disk_total_space,posix_ctermid,posix_get_last_error,posix_getcwd, posix_getegid,posix_geteuid,posix_getgid,posix_getgrgid,posix_getgrnam,posix_getgroups,posix_getlogin,posix_getpgid,posix_getpgrp,posix_getpid, posix_getppid,posix_getpwnam,posix_getpwuid, posix_getrlimit, posix_getsid,posix_getuid,posix_isatty, posix_kill,posix_mkfifo,posix_setegid,posix_seteuid,posix_setgid, posix_setpgid,posix_setsid,posix_setuid,posix_strerror,posix_times,posix_ttyname,posix_uname #列出PHP可以禁用的函数,如果某些程序需要用到这个函数,可以删除,取消禁用。 #找到: ;date.timezone = #修改为: date.timezone = PRC #找到: expose_php = On #修改为: expose_php = OFF #禁止显示php版本的信息 #找到: display_errors = On #修改为: display_errors = OFF #关闭错误提示
如图8所示,配置apache的支持PHP
vi /usr/local/apache2/conf/httpd.conf #编辑apache配置文件 在LoadModule php5_module modules/libphp5.so这一行下面添加 AddType application/x-httpd-php .php service httpd restart #重启apache service mysqld restart #重启mysql
9,测试
cd /usr/local/apache2/htdocs
vi index.php
#确保改目录为以下权限
chown daemon.daemon -R /usr/local/apache2/htdocs
chmod -R 700 /usr/local/apache2/htdocs
转:http://www.178linux.com/76011