博客列表 >centos7源码编译安装lamp整理版

centos7源码编译安装lamp整理版

会飞的码蚁的博客
会飞的码蚁的博客原创
2020年05月09日 11:00:082347浏览

环境:LAMP(centos7.4,Apache2.4.25,MySQL5.7,PHP5.6)

经过多日的探索,经过多次的尝试,经过不懈的努力

通过各种的抓瞎,通过各样的报错,通过N次的重装

终于!成功了!!!这是整理后的,更加一目了然

----------------- 编译安装httpd ----------------------

1、前期准备 需要下载的东西

下载httpd-2.4.25   apr-1.5.2  apr-util-1.5.4  pcre-8.40(如果该版本没有,就到下面链接里去找别的版本,也可以下载下来再上传至服务器)

wget https://mirrors.tuna.tsinghua.edu.cn/apache/httpd/httpd-2.4.35.tar.gz
wget https://mirrors.tuna.tsinghua.edu.cn/apache/apr/apr-1.6.5.tar.gz
wget https://mirrors.tuna.tsinghua.edu.cn/apache/apr/apr-util-1.6.1.tar.gz
wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.40.tar.gz


2、查询是否安装了Apache服务器httpd

# rpm -qa|grep httpd

卸载系统自动装的Apache服务器httpd

# httpd -k stop     #停止httpd服务器
# yum remove httpd    #卸载httpd服务器


3、检查系统是否安装了GCC

# gcc

bash: gcc: 未找到命令...      #出现未找到命令提示,说明没有安装GCC(最好使用别的命令进行检查,排除安装低版本的gcc的可能)


4、安装GCC 和 gcc-c++

# yum -y install gcc
# yum -y install gcc-c++

**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**

*[ 注意:如果没有安装gcc-c++,那么在 执行./configure  -prefix=/usr/local/pcre 时会报 *

* configure: error: You need a C++ compiler for C++ support. 错误 ] *

**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**

5、编译安装apr

# tar -zxvf apr-1.5.2.tar.gz
# cd apr-1.5.2
# ./configure -prefix=/usr/local/apr(指定apr的安装目录为/usr/local/apr 配置)
# make && make install


安装apr出现的问题

# tar -zxvf apr-1.5.1.tar.gz
# ./configure --prefix=/usr/local/apr/(配置安装目录)
# make && make install(在指定地址生成目录和文件)


6、编译安装apr-util

# tar -zxvf  apr-util-1.5.4.tar.gz

【注意:(./configure --prefix=/usr/local/apr-util/ 直接这样会报错的)】

# ./configure --prefix=/usr/local/apr-util/ --with-apr=/usr/local/apr/
# make && make install(在指定地址生成目录和文件)


安装apr-util出现的问题

安装失败 : "apr_xml.c:35:19: fatal error: expat.h: No such file or directory"

解决办法:yum install expat-devel (一般这类错误都是缺少依赖,问题是怎么找出来。)

*** PS: 对于此错误,一般习惯性先去更新一下yum仓库:#yum -y update 

*** 再次运行安装,发现错误依旧,看来这种猜包名的方法不适用;所以接下来可以通过yum的查找参数来列出expat-devel相关的包名:

*** yum search expat-devel

*** yum -y install expat-devel



7、编译安装httpd

# tar -zxvf httpd-2.4.35.tar.gz
# cd httpd-2.4.35
# ./configure --prefix=/usr/local/apache --sysconf=/etc/httpd --enable-so --enable-cgi --enable-ssl --enable-rewrite --with-ssl=/usr/local/openssl --with-pcre=/usr/local/pcre --with-z=/usr/local/zlib --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-ssl=/usr/local/openssl --enable-modules=most --enable-mpms-shared=all --with-mpm=event


// 还会出现下面的错误    原因是:还是缺少环境 PCRE

【 checking for pcre-config... false

configure: error: pcre-config for libpcre not found. PCRE is required and available from http://pcre.org/ 】

# tar -zxvf pcre-8.40.tar.gz
# ./configure --prefix=/usr/local/pcre/
# make && make install

继续安装Apache

# ./configure --prefix=/usr/local/apache --sysconf=/etc/httpd --enable-so --enable-cgi --enable-ssl --enable-rewrite --with-ssl=/usr/local/openssl --with-pcre=/usr/local/pcre --with-z=/usr/local/zlib --with-apr=/usr/local/apr --with-apr-util=/usr/local/apr-util --with-ssl=/usr/local/openssl --enable-modules=most --enable-mpms-shared=all --with-mpm=event


// 编译httpd出现configure: error: ... Error, zlib was missing or unusable 的问题

使用:

# yum install zlib-devel


重新编译httpd

出现问题:checking whether to enable mod_ssl... 

configure: error: mod_ssl has been requested but can not be built due to prerequisite failures

使用:

# yum install openssl-devel


重新编译httpd,成功!!!(如有再次报错,就按照报错信息进行操作)


最后一步,使用:

# make && make install  在指定地址生成目录和文件


8、测试 Apache

centos7使用systemctl代替chkconfig管理服务,防火墙也由iptables更换成了firewalld

首先用systemctl关闭防火墙:

# systemctl stop firewalld.service
# systemctl disable firewalld.service

开启 Apache 服务

# /usr/local/apache/bin/apachectl start


在***端浏览器输入自己的 IP 地址,看看能够成功访问 Apache

成功显示 It Works!就代表 服务器已成功启动~\(≧▽≦)/~啦啦啦

【PS:项目放在:/usr/local/apache/htdocs/ 下,配置文件在/etc/httpd/ 下】


9、添加Apache环境变量,末尾加 : 添加上Apache的bin目录

# vim /etc/profile
PATH=$PATH:/usr/local/apache/bin
export PATH

执行刚才修改的文件

# source /etc/profile

可以通过如下命令查看所有的环境变量信息

# echo $PATH

【配置多域名】

I.第一种方法

1、进入到 /etc/httpd/extra目录下,名为httpd-vhosts-conf的文件(当然,文件也可以自己创建、命名)

删除文件中的内容,添加:

<VirtualHost *:80>
    ServerName codeants.top
    ServerAlias codeants.top www.codeants.top
    DocumentRoot /usr/local/apache/htdocs
    DirectoryIndex index.html index.php
</VirtualHost>
<Directory "/usr/local/apache/htdocs">
    Options +Includes -Indexes
    AllowOverride All
    Order Deny,Allow
    Allow from All
</Directory>

2、在httpd.conf文件末尾加上include httpd-vhosts-conf (将文件夹下的所有.conf配置文件导入进来)

3、重启Apache


II.第二种方法

1、配置站点对应的host

打开hosts文件编辑: vim etc/hosts

添加:127.0.0.1  www.codeants.top


2、进入到 /etc/httpd目录下,创建一个名为vhost-conf.d的文件夹(当然,文件夹可以自己命名)

进入vhost-conf.d文件夹,为每个站点创建配置文件,命名随意(也就是一个站点一个配置文件)


3、每个站点的配置信息,创建一个站点的配置文件之后,其它站点拷贝做相应的修改就好了。

<VirtualHost *:80>
    ServerName codeants.top
    ServerAlias codeants.top www.codeants.top
    DocumentRoot /usr/local/apache/htdocs
    DirectoryIndex index.html index.php
</VirtualHost>
<Directory "/usr/local/apache/htdocs">
    Options +Includes -Indexes
    AllowOverride All
    Order Deny,Allow
    Allow from All
</Directory>


4、在httpd.conf文件末尾加上include vhost-conf.d/*.conf (将文件夹下的所有.conf配置文件导入进来)


5、重启httpd服务就可以了。***域名之后,域名映射到服务器IP就行了,

  但是要在/etc/hosts文件中自己添加的域名与***的域名一样才能区分多个站点的域名解析


-------------------- 配置https协议 ---------------

[这里提示一下,如果使用的xsell工具就安装一个上传工具:yum install  lrzsz -y,命令( # rz ),如果覆盖原文件( # rz -y )]

1、申请证书

我使用的是阿里云免费的证书


( 1 ) 在Apache的安装目录下创建cert目录,并且将下载的全部文件拷贝到cert目录中。

  如果申请证书时是自己创建的CSR文件,请将对应的私钥文件放到cert目录下并且命名为1535603823155.key;

( 2 ) 打开 Apache 安装目录下 conf 目录中的 httpd.conf 文件,找到以下内容并去掉“#”:

# LoadModule ssl_module modules/mod_ssl.so (如果找不到请确认是否编译过 openssl 插件)
# Include conf/extra/httpd-ssl.conf


( 3 ) 打开 Apache 安装目录下 conf/extra/httpd-ssl.conf 文件

  (也可能是conf.d/ssl.conf,与操作系统及安装方式有关), 在配置文件中查找以下配置语句:

添加 SSL 协议支持协议,去掉不安全的协议

SSLProtocol all -SSLv2 -SSLv3

修改加密套件如下

SSLCipherSuite HIGH:!RC4:!MD5:!aNULL:!eNULL:!NULL:!DH:!EDH:!EXP:+MEDIUM
SSLHonorCipherOrder on

证书公钥配置

SSLCertificateFile cert/public.pem

证书私钥配置

SSLCertificateKeyFile cert/1535603823155.key

证书链配置,如果该属性开头有 '#'字符,请删除掉

SSLCertificateChainFile cert/chain.pem

( 4 ) 重启 Apache。

报错:AH00526: Syntax error on line 94 of /etc/httpd/extra/httpd-ssl.conf:

SSLSessionCache: 'shmcb' session cache not supported (known names: ).

Maybe you need to load the appropriate socache module (mod_socache_shmcb?).

解决方案:

需要shmcb支持(俺也不清楚是个啥,总之是要支持就对了),于是,翻开httpd.conf,找到如下一行

# LoadModule socache_shmcb_module modules/mod_socache_shmcb.so

把前面的#去掉,重启Apache,OK了

( 5 ) 通过 https 方式访问您的站点,测试站点证书的安装配置


------------------编译安装 PHP ------------------

1、准备工作,下载php源码包

# wget http://cn2.php.net/distributions/php-5.6.30.tar.gz
# tar -zxvf php-5.6.30.tar.gz
# cd php-5.6.3


# ./configure --prefix=/usr/local/php --with-config-file-path=/usr/local/php/etc --with-mysqli --with-pdo-mysql --with-mysql-sock=/usr/local/mysql/mysql.sock --with-apxs2=/usr/local/apache/bin/apxs --with-png-dir=/usr/local/libpng --with-jpeg-dir=/usr/local/jpeg --with-freetype-dir=/usr/local/freetype --with-zlib-dir=/usr/local/zlib --with-mcrypt=/usr/local/libmcrypt --with-libxml-dir=/usr/local/libxml2/ --with-iconv-dir=/usr/local/libiconv --enable-libxml --enable-xml --enable-bcmath --enable-shmop --enable-sysvsem --enable-inline-optimization --enable-opcache --enable-mbregex --enable-fpm --enable-mbstring=all --enable-gd-native-ttf --with-openssl --enable-pcntl --enable-sockets --with-xmlrpc --enable-zip --enable-soap --without-pear --with-gettext --enable-session --with-curl --enable-ctype --enable-shared --with-gd --enable-mysqlnd

报错:[error: xml2-config not found. Please check your libxml2 installation.]

注意:开始我以为是我没有安装 libxml2 插件,但是我 yum install libxml2 后,发现我已经安装了

再次编译PHP,还是报这个错,发现是 libxml2-devel 没有安装,然后

# yum install libxml2-devel -y
# find / -name "xml2-config"(显示 /usr/bin/xml2-config 表示安装成功)

好了,继续编译PHP

报错:[error: Please reinstall the libcurl distribution -

easy.h should be in <curl-dir>/include/curl/]

这是缺少 libcurl 插件,那就继续安装

# yum -y install curl-devel

继续编译 (-"-怒)

报错:[If configure fails try --with-vpx-dir=<DIR>

configure: error: jpeglib.h not found.]

这是GD库未安装,我们继续安装GD库

# yum install libjpeg libpng freetype libjpeg-devel libpng-devel freetype-devel -y

不要着急,要什么就给他装什么,继续编译走起

报错:[error: mcrypt.h not found. Please reinstall libmcrypt.]

缺失插件 libmcrypt,centos尝试用yum安装libmcrypt不成功,只能采用编译安装:

(注意:要先切换出php编译目录)

# wget ftp://mcrypt.hellug.gr/pub/crypto/mcrypt/attic/libmcrypt/libmcrypt-2.5.7.tar.gz
# tar -zxvf libmcrypt-2.5.7.tar.gz
# cd libmcrypt-2.5.7
# ./configure --prefix=/usr/local/libmcrypt
# make && make install

返回PHP编译目录,继续编译,我这边编译成功!!!ヾ(✿゚▽゚)ノ

完成最后一步

# make && make install


**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**

* 注意:我经过多次试验,有个问题我觉得应该在这特别备注一下,如果你们 /usr/local/apache/modules 中缺少libphp5.so文件 *

* 查过资料,最后定位为编译PHP时没有 --with-apxs2=/usr/local/apache/bin/apxs *

* 所以要重新编译PHP,然后再make && make install, *

* 这时候有出现一个报错:(collect2: error: ld returned 1 exit status make: *** [sapi/cli/php] Error 1) *

* 我试着使用(没解决) *

* # vim Makefile *

* 大约77行左右的地方: EXTRA_LIBS = ..... -lcrypt 在最后加上 -liconv(ps:反正我还是报错) *

* 我是使用这种方法解决的,我又重新编译一次后,使用 *

* # make clean (清除编译结果) *

* # make *

* # make install (成功!!!) *

**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**


【配置服务】

#配置文件

# cp php.ini-development /usr/local/php/etc/php.ini

 

php-fpm 服务

# cp /usr/local/php/etc/php-fpm.conf.default /usr/local/php/etc/php-fpm.conf
# cp sapi/fpm/init.d.php-fpm /etc/init.d/php-fpm
# chmod +x /etc/init.d/php-fpm
# chkconfig --add php-fpm
# chkconfig on php-fpm
# service php-fpm start (启动 fpm 服务)

查看 fpm 端口

# netstat -ntlp | grep 9000

如需结束php-tpm进程:

# killall php-fpm


添加PHP环境变量,PATH末尾加 : 添加上php的bin目录,sbin目录(php-fpm)

# vim /etc/profile

在文件最后添加上这两行,保存退出

PATH=$PATH:/usr/local/php/bin:/usr/local/php/sbin
export PATH

添加Apache环境变量,末尾加 : 添加上Apache的bin目录

PATH=$PATH:/usr/local/php/bin:/usr/local/php/sbin:/usr/local/apache/bin
export PATH

执行刚才修改的文件

# source /etc/profile

可以通过如下命令查看所有的环境变量信息

# echo $PATH


编辑httpd.conf,可以找到:

LoadModule php5_module modules/libphp5.so


在<IfModule mime_module></IfModule>之间加入:

AddType application/x-httpd-php .php .phtml
AddType application/x-httpd-php-source .phps
AddHandler application/x-httpd-php .php

修改

<IfModule dir_module>
    DirectoryIndex index.html index.php
</IfModule>

重启Apache

# service httpd restart(restart:重启;stop:终止;start:开启)

如果这个命令不好使,应该是环境变量的问题,也可以使用

# /usr/local/apache/bin/apachectl start



--------------------- 编译安装MySQL ---------------------------

1、老样子,先找源码包,我习惯将源码包放在 ~ 这里,也可以放在你的安装目录里面,根据个人习惯

# cd ~
# wget https://dev.mysql.com/get/Downloads/MySQL-5.7/mysql-boost-5.7.23.tar.gz


2、检查系统中是否存在使用rpm安装的mysql或者mariadb,如果有需要先删除后再编译安装。

# rpm -qa | grep mysql #由下至上依次卸载
# rpm -qa | grep mariadb
# rpm -e xxx #一般使用此命令即可卸载成功
# rpm -e --nodeps xxx #卸载不成功时使用此命令强制卸载

卸载完以后再用 rpm -qa|grep mariadb 或者 rpm -qa|grep mysql 查看结果

3、安装MySQL的编译工具和插件

# yum -y install ncurses ncurses-devel bison cmake


4、建立MySQL组和用户,并将MySQL用户添加到MySQL组

# groupadd mysql
# useradd -g mysql -s /sbin/nologin mysql


5、解压源码包,编译,安装,首先先安装boost

**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**

* Mysql5.7版本更新后有很多变化,比如json等,连安装都有变化,他安装必须要BOOST库, *

* 不过mysql的官网源码有带boost库的源码和不带boost库的源码两种,其他文章中有写 *

**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**


// 编译时出现N多个问题,各种编译失败,找到了一个解决方法,安装boots

// 查询资料得出boost1.6版本不行,是否真实未得出,反正我yum安装的boost1.6版本是不好使

在/usr/local下创建一个名为boost的文件夹

# mkdir -p /usr/local/boost
# wget http://www.sourceforge.net/projects/boost/files/boost/1.59.0/boost_1_59_0.tar.gz
# tar -xvzf boost_1_59_0.tar.gz

继续切换到解压出的 MySQL 目录进行 cmake,添加上 -DWITH_BOOST=/usr/local/boost

注意!!!

# tar -xzvf mysql-boost-5.7.23.tar.gz
# cmake -DCMAKE_INSTALL_PREFIX=/usr/local/mysql -DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock -DSYSCONFDIR=/etc -DSYSTEMD_PID_DIR=/usr/local/mysql -DDEFAULT_CHARSET=utf8 -DDEFAULT_COLLATION=utf8_general_ci -DWITH_INNOBASE_STORAGE_ENGINE=1 -DWITH_ARCHIVE_STORAGE_ENGINE=1 -DWITH_BLACKHOLE_STORAGE_ENGINE=1 -DWITH_PERFSCHEMA_STORAGE_ENGINE=1 -DMYSQL_DATADIR=/usr/local/mysql/data -DWITH_BOOST=boost -DWITH_SYSTEMD=1

####################################################################################################################

# 注:

# cmake \
#-DCMAKE_INSTALL_PREFIX=/usr/local/mysql \ //定义安装目录
#-DMYSQL_UNIX_ADDR=/usr/local/mysql/mysql.sock \ //连接数据库socket路径
#-DSYSCONFDIR=/etc \ //指定初始化参数文件目录(my.cnf)
#-DSYSTEMD_PID_DIR=/usr/local/mysql \ //数据库目录
#-DDEFAULT_CHARSET=utf8 \ //指定默认使用的字符集编码
#-DDEFAULT_COLLATION=utf8_general_ci \ //指定默认使用的字符集校对规则,utf8_general_ci是适用于UTF-8字符集的通用规则
#-DWITH_INNOBASE_STORAGE_ENGINE=1 \ //支持InnoDB引擎
#-DWITH_ARCHIVE_STORAGE_ENGINE=1 \ 
#-DWITH_BLACKHOLE_STORAGE_ENGINE=1 \
#-DWITH_PERFSCHEMA_STORAGE_ENGINE=1 \ //安装支持数据库分区
#-DMYSQL_DATADIR=/usr/local/mysql/data \
#-DWITH_BOOST=boost \
#-DWITH_SYSTEMD=1

####################################################################################################################

# make
# make install


//对数据库目录进行权限设置

# chown -R mysql.mysql /usr/local/mysql/


编辑mysql主配置文件

# vim /etc/my.cnf(里面内容全部删除,替换成以下内容)
[client]
port = 3306 
default-character-set=utf8
socket = /usr/local/mysql/mysql.sock
[mysql]
port = 3306
default-character-set=utf8
socket = /usr/local/mysql/mysql.sock
[mysqld]
user = mysql
basedir = /usr/local/mysql
datadir = /usr/local/mysql/data
port = 3306
character_set_server=utf8
pid-file = /usr/local/mysql/mysqld.pid
socket = /usr/local/mysql/mysql.sock
server-id = 1
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_AUTO_VALUE_ON_ZERO,NO_ZERO_IN_DATE,NO_ZERO_DATE,ERROR_FOR_DIVISION_BY_ZERO,PIPES_AS_CONCAT,ANSI_QUOTES


然后在进行

# chown mysql:mysql /etc/my.cnf


设置环境变量

# echo 'PATH=/usr/local/mysql/bin:/usr/local/mysql/lib:$PATH' >> /etc/profile

//把这两个路径添加到环境变量中,并放到profile文件中使之开机自运行,否则不生效

# echo 'export PATH' >> /etc/profile
# source /etc/profile //立即生效


初始化数据库

# cd /usr/local/mysql/
# bin/mysqld --initialize-insecure --user=mysql --basedir=/usr/local/mysql --datadir=/usr/local/mysql/data


添加系统服务

# cp usr/lib/systemd/system/mysqld.service /usr/lib/systemd/system/
# systemctl daemon-reload


开启mysql服务

# systemctl start mysqld
# netstat -anpt | grep 3306 //查看服务运行状态
# systemctl enable mysqld //设为开机启动


访问数据库操作

# mysqladmin -u root -p password "abc123"//给root账号设置密码为abc123

注意:提示输入的是原始密码(原始没有密码,直接回车)

# mysql -u root –p //登录数据库

注意:有密码的加“-p”,如果没有密码不用加“-p”


**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**

在这里我这里出现了报错 mysqladmin: [Warning] Using a password on the command line interface can be insecure.

Warning: Since password will be sent to server in plain text, use ssl connection to ensure password safety.

我使用的是xsell工具,可能是传输协议的锅,我决定把跳过MySQL的密码认证过程,直接修改数据库

# vim /etc/my.cnf

在文档内搜索mysqld定位到[mysqld]文本段:

在[mysqld]后面任意一行添加“skip-grant-tables”用来跳过密码验证的过程


重启MySQL,systemctl restart mysqld


重启之后输入 # mysql 即可进入mysql

# mysql> use mysql;
# mysql> update user set password=password("你的新密码") where user="root";


报错:Unknown column 'Password' in 'field list'

在这里需要注意:5.7版本下的mysql数据库下已经没有password这个字段了,password字段改成了authentication_string

# mysql> update user set authentication_string=password('你的新密码') where user='root';

如果这里报(your password does not satisfy the current policy requirements)的错误,说明新密码过于简单,或不符合MySQL密码规则

# mysql> flush privileges;
# mysql> quit;

如果使用工具链接数据库的话要修改,host字段,因为默认为'localhost'只允许服务器本地连接,如果不限制的话可以修改为 '%' 全部允许

# mysql> update user set host='你的ip' where user='root';

**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**--**


【配置多域名】

I.第一种方法

1、进入到 /etc/httpd/extra目录下,名为httpd-vhosts-conf的文件(当然,文件也可以自己创建、命名)

删除文件中的内容,添加:

<VirtualHost *:80>
    ServerName codeants.top
    ServerAlias codeants.top www.codeants.top
    DocumentRoot /usr/local/apache/htdocs
    DirectoryIndex index.html index.php
</VirtualHost>
<Directory "/usr/local/apache/htdocs">
    Options +Includes -Indexes
    AllowOverride All
    Order Deny,Allow
    Allow from All
</Directory>

2、在httpd.conf文件末尾加上/etc/httpd/extra/httpd-vhosts.conf (将配置文件导入进来)

3、重启Apache


II.第二种方法

1、配置站点对应的host

打开hosts文件编辑: vim etc/hosts

添加:127.0.0.1  www.codeants.top


2、进入到 /etc/httpd目录下,创建一个名为vhost-conf.d的文件夹(当然,文件夹可以自己命名)

进入vhost-conf.d文件夹,为每个站点创建配置文件,命名随意(也就是一个站点一个配置文件)


3、每个站点的配置信息,创建一个站点的配置文件之后,其它站点拷贝做相应的修改就好了。

<VirtualHost *:80>
    ServerName codeants.top
    ServerAlias codeants.top www.codeants.top
    DocumentRoot /usr/local/apache/htdocs
    DirectoryIndex index.html index.php
</VirtualHost>
<Directory "/usr/local/apache/htdocs">
    Options +Includes -Indexes
    AllowOverride All
    Order Deny,Allow
    Allow from All
</Directory>


4、在httpd.conf文件末尾加上include vhost-conf.d/*.conf (将文件夹下的所有.conf配置文件导入进来)


5、重启httpd服务就可以了。

***域名之后,域名映射到服务器IP就行了,但是要在/etc/hosts文件中自己添加的域名与***的域名一样才能区分多个站点的域名解析


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议
笑的很甜丶2019-01-15 17:33:321楼
可以把apache注册为服务,根据自己的情况执行如下命令 # cp /usr/local/apache/bin/apachectl /etc/rc.d/init.d/httpd 执行完之后就可以通过以下方式进行管理apache服务了。 service httpd start service httpd stop service httpd restart