vegrant 安装php,centos7利用LAMP实现Discuz的搭建

一、准备工作准备一台centos7.4的系统

关闭防火墙和selinux[root@centos7 ~]# systemctl stop  firewalld.service

[root@centos7 ~]# systemctl disable  firewalld.service

[root@centos7 ~]# vim /etc/selinux/config

SELINUX=disabled

[root@centos7 ~]# systemctl reboot

二、准备搭建Discuz所需要的软件包,这是使用的是编译安装所有软件

需要的软件有:apr-1.6.2.tar.gz、Discuz_X3.4_GIT_SC_UTF8.zip、mariadb-5.5.60-linux-x86_64.tar.gz 、xcache-3.2.0.tar.bz2、apr-util-1.6.0.tar.gz 、httpd-2.4.29.tar.bz2、php-5.6.36.tar.xz

三、编译安装httpd2.4这里是编译安装httpd,而httpd需要由apr,这里将centos7自带的apr和apr-util卸载[root@centos7 ~]# yum remove -y apr.x86_64 apr-util.x86_64

2.将apr-1.6.2.tar.gz、apr-util-1.6.0.tar.gz 、httpd-2.4.29.tar.bz2解压缩[root@centos7 ~]# tar xf apr-1.6.2.tar.gz ;tar xf apr-util-1.6.0.tar.gz ;tar xf httpd-2.4.29.tar.bz2

3.将apr-1.6.2.tar.gz、apr-util-1.6.0.tar.gz移动到httpd-2.4.29/srclib目录下,并将名字改为apr和apr-util[root@centos7 ~]# mv apr-1.6.2 httpd-2.4.29/srclib/apr

[root@centos7 ~]# mv apr-util-1.6.0 httpd-2.4.29/srclib/apr-util

4.在编译安装之前需要安装几个软件包,不然在编译过程中会报错[root@centos7 httpd-2.4.29]# yum -y groupinstall "Development Tools"

[root@centos7 httpd-2.4.29]# yum -y install pcre-devel openssl-devel expat-devel

5.开始编译安装[root@centos7 ~]# cd httpd-2.4.29/

[root@localhost httpd-2.4.29]# ./configure --prefix=/app/httpd24 --sysconfdir=/etc/httpd24/conf --enable-so --enable-ssl --enable-rewrite --with-zlib --with-pcre

--with-included-apr --enable-modules=most --enable-mpms-shared=all --with-mpm=prefork

[root@centos7 httpd-2.4.29]# make -j 4 #这里根据cpu的数量自己定义

[root@centos7 httpd-2.4.29]# make install

6.创建apache用户[root@centos7 httpd-2.4.29]# useradd -r -m -d /var/www -s /sbin/nologin apache

[root@centos7 httpd-2.4.29]# mkdir /var/www/html

7.为了方便这里添加PATH变量[root@centos7 bin]# vim /etc/profile.d/test.sh

export  PATH=/app/httpd24/bin:$PATH

[root@centos7 bin]# source /etc/profile.d/test.sh

8.将编译好的httpd服务添加到归systemd管理[root@centos7 ~]# vim /usr/lib/systemd/system/httpd.service

[Unit]

Description=The Apache HTTP Server

After=network.target

Documentation=man:httpd(8)

Documentation=man:apachectl(8)

[Service]

Type=forking

ExecStart=/app/httpd24/bin/apachectl start

ExecReload=/app/httpd24/bin/httpd $OPTIONS -k graceful

ExecStop=/bin/kill -WINCH ${MAINPID}

KillSignal=SIGCONT

PrivateTmp=true

[Install]

WantedBy=multi-user.target

[root@centos7 ~]# systemctl daemon-reload #更新systemd

[root@centos7 ~]# systemctl restart httpd.service

9.简单修改配置文件User apache

Group apache

ServerName www.test.com:80

DocumentRoot "/var/www/html"      #这里为了使用上和rpm包安装没有区别,所以也放入该目录下

Options Indexes FollowSymLinks

AllowOverride None

Require all granted

[root@centos7 ~]# systemctl restart httpd.service

10.测试httpd2.4[root@centos7 ~]# vim /var/www/html/index.html

test html index.html

241b9318d787b0c77f29cff9b973958e.png

四、编译安装mariadb数据库

1.解压缩,由于编译mariadb时间太长,这里是从mariadb官方网站上下载已经编译好的包,所以解压缩时需要解压缩到/usr/local/目录下并且需要叫mysql[root@centos7 ~]# tar xf mariadb-5.5.60-linux-x86_64.tar.gz -C /usr/local/

[root@centos7 ~]# cd /usr/local/

[root@centos7 local]# ln -s mariadb-5.5.60-linux-x86_64/ mysql

2.创建用户[root@centos7 local]# useradd -r -m -d /app/mysqldb -s /sbin/nologin mysql

3.设置配置文件[root@centos7 mysql]# cd /usr/local/mysql/

[root@centos7 mysql]# mkdir /etc/mysql

[root@centos7 mysql]# cp support-files/my-large.cnf /etc/mysql/my.cnf

[root@centos7 mysql]# vim /etc/mysql/my.cnf

[mysqld]

datadir = /app/mysqldb #指定数据库文件存放位置

innodb_file_per_table = on  #指定每一个表是一个文件

skip_name_resolve = on #不进行反解析

4.安装数据库[root@centos7 mysql]# scripts/mysql_install_db --datadir=/app/mysql --user=mysql

5.设置PATH变量[root@centos7 bin]# vim /etc/profile.d/test.sh

export  PATH=/usr/local/mysql/bin:/app/httpd24/bin:$PATH

[root@centos7 bin]# source /etc/profile.d/test.sh

6.拷贝启动脚本,让服务可以使用systemctl管理[root@centos7 mysql]# cp support-files/mysql.server /etc/init.d/mysqld

[root@centos7 mysql]# chkconfig --add mysqld

[root@centos7 mysql]# chkconfig mysqld on

7.mariadb5版本要想让mysql用户在/var/log/目录下写日志需要单独给权限[root@centos7 mysql]# mkdir /var/log/mariadb

[root@centos7 mysql]# setfacl -m u:mysql:rwx /var/log/

[root@centos7 mysql]# setfacl -m u:mysql:rwx /var/log/mariadb

8.重启服务[root@centos7 log]# systemctl restart mysqld.service

9.创建初始化数据库[root@centos7 log]# mysql_secure_installation

/usr/local/mysql/bin/mysql_secure_installation: line 393: find_mysql_client: command not found

NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB

SERVERS IN PRODUCTION USE!  PLEASE READ EACH STEP CAREFULLY!

In order to log into MariaDB to secure it, we'll need the current

password for the root user.  If you've just installed MariaDB, and

you haven't set the root password yet, the password will be blank,

so you should just press enter here.

Enter current password for root (enter for none):

OK, successfully used password, moving on...

Setting the root password ensures that nobody can log into the MariaDB

root user without the proper authorisation.

Set root password? [Y/n] y

New password:

Re-enter new password:

Password updated successfully!

Reloading privilege tables..

... Success!

By default, a MariaDB installation has an anonymous user, allowing anyone

to log into MariaDB without having to have a user account created for

them.  This is intended only for testing, and to make the installation

go a bit smoother.  You should remove them before moving into a

production environment.

Remove anonymous users? [Y/n] y

... Success!

Normally, root should only be allowed to connect from 'localhost'.  This

ensures that someone cannot guess at the root password from the network.

Disallow root login remotely? [Y/n] n

... skipping.

By default, MariaDB comes with a database named 'test' that anyone can

access.  This is also intended only for testing, and should be removed

before moving into a production environment.

Remove test database and access to it? [Y/n] y

- Dropping test database...

... Success!

- Removing privileges on test database...

... Success!

Reloading the privilege tables will ensure that all changes made so far

will take effect immediately.

Reload privilege tables now? [Y/n] y

... Success!

Cleaning up...

All done!  If you've completed all of the above steps, your MariaDB

installation should now be secure.

Thanks for using MariaDB!

10.创建对应的数据库和授权用户[root@centos7 log]# mysql -uroot -pcentos

MariaDB [(none)]> create database luntan;

MariaDB [(none)]> grant all on luntan.* to luntanuser@"%" identified by "centos";

五.编译安装php,若使用php5版本,则需要mariadb,使用10版本的mariadb不兼容

1.解压缩[root@centos7 ~]# tar xf php-5.6.36.tar.xz

2.安装编译安装所需要的软件包,这里需要epel源[root@centos7 php-5.6.36]# yum -y install libxml2-devel bzip2-devel libmcrypt-devel

3.编译安装[root@centos7 php-5.6.36]# ./configure --prefix=/app/php --with-mysql=/usr/local/mysql --with-openssl --with-mysqli=/usr/local/mysql/bin/mysql_config --enable-mbstring

--with-freetype-dir --with-jpeg-dir --with-png-dir --with-zlib --with-libxml-dir=/usr --enable-xml --enable-sockets --with-apxs2=/app/httpd24/bin/apxs --with-mcrypt

--with-config-file-path=/etc/php --with-config-file-scan-dir=/etc/php.d --with-bz22

[root@centos7 php-5.6.36]# make -j 4

[root@centos7 php-5.6.36]# make install

4.复制配置文件[root@centos7 php-5.6.36]# cp php.ini-production /etc/php.ini

5.编辑httpd服务的配置文件[root@centos7 php-5.6.36]# vim /etc/httpd24/conf/httpd.conf

DirectoryIndex index.php index.html

AddType application/x-httpd-php .php

AddType application/x-httpd-php-soure .phps

6.测试php与mysql数据库连通性[root@centos7 html]# vim index.php

$conn = mysql_connect('127.0.0.1','luntanuser','centos');

if ($conn)

echo "OK";

else

echo "Failure";

mysql_close();

?>

[root@centos7 html]# systemctl restart httpd.service

03af1c09716ee597f5a734b443bf4d64.png

六、安装Discuz[root@centos7 ~]# unzip Discuz_X3.4_GIT_SC_UTF8.zip

[root@centos7 ~]# mv dir_SC_UTF8/ /var/www/html/

[root@centos7 upload]# ln -s dir_SC_UTF8/ lt

[root@centos7 ~]# cd /var/www/html/dir_SC_UTF8/upload/config/

[root@centos7 config]# cp config_global_default.php config_global.php

[root@centos7 config]# cp config_ucenter_default.php config_ucenter.php

[root@centos7 html]# setfacl -Rm u:apache:rwx dir_SC_UTF8/

在网页上输入http://192.168.86.7/lt/upload/install/

e2094084bb06688df86421da73cfe9fd.png

2d1a1da159e5919e6d5ec43fffc31550.png

e35b0239a3413b7fd47bffad7672d8d8.png

4c3439e4112ff1fec94589ed7c7d2999.png

cd4d40de93d0e0893dbe562ce26245c9.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值