赞
踩
安装前的准备
- yum install \
- vim \
- gcc \
- gcc-c++ \
- wget \
- make \
- libtool \
- automake \
- autoconf \
- expat-devel \
- -y \
安装apr、apr-util
- cd /root
- wget http://mirrors.hust.edu.cn/apache/apr/apr-1.6.3.tar.gz
- tar -zxvf apr-1.6.3.tar.gz
- cd apr-1.6.3
- ./configure
- make
- make install
-
- cd /root
- wget http://mirrors.hust.edu.cn/apache/apr/apr-util-1.6.1.tar.gz
- tar -zxvf apr-util-1.6.1.tar.gz
- cd apr-util-1.6.1
- ./configure --with-apr=../apr-1.6.3
- make
- make install
安装PCRE库
- cd /root
- wget ftp://ftp.csx.cam.ac.uk/pub/software/programming/pcre/pcre-8.39.tar.gz
- 或者(第三方):wget https://fossies.org/linux/misc/pcre-8.39.tar.gz
- tar -zxvf pcre-8.39.tar.gz
- cd pcre-8.39
- ./configure
- make
- make install
安装zlib库
- cd /root
- wget http://zlib.net/zlib-1.2.11.tar.gz
- tar -zxvf zlib-1.2.11.tar.gz
- cd zlib-1.2.11
- ./configure
- make
- make install
安装openssl
- # openssl从1.0.2开始支持http2
- cd /root
- wget https://www.openssl.org/source/openssl-1.0.2l.tar.gz
- tar -zxvf openssl-1.0.2l.tar.gz
获取源码并安装
- cd /root
- wget http://mirrors.shuosc.org/apache//httpd/httpd-2.4.29.tar.gz
- tar -zxvf httpd-2.4.29.tar.gz
- cd httpd-2.4.29
- # 注意:
- # with-apr和with-apr-util要指定安装路径
- # with-z with-ssl with-pcre如安装时指定了路径,这里也要指定路径
- ./configure \
- --prefix=/usr/local/apache \
- --sysconfdir=/etc/httpd \
- --with-mpm=event \
- --with-apr=../apr-1.6.3/ \
- --with-apr-util=../apr-util-1.6.1 \
- --with-z \
- --with-ssl \
- --with-pcre \
- --enable-so \
- --enable-cgi \
- --enable-ssl \
- --enable-rewrite \
- --enable-modules=most \
- --enable-mpms-shared=all \
- make
- make install

修改配置
- # 注意,这里不要使用和其它web服务冲突的端口号
- vim /etc/httpd/httpd.conf
-
- ServerName localhost:80
- User www
- Group www
-
- ESC
- :wq
修改目录所属用户(也可不修改)
- useradd www
- chown -R www:www /usr/local/apache
启动与关闭测试
- # 启动
- /usr/local/apache/bin/apachectl start
- # 重启
- /usr/local/apache/bin/apachectl restart
- # 关闭
- /usr/local/apache/bin/apachectl stop
创建软连接,编辑启动脚本
- ln -s /usr/local/apache/bin/apachectl /etc/rc.d/init.d/httpd
-
- vim /etc/rc.d/init.d/httpd
-
- #chkconfig: 2345 10 90
- #description: Apache Web Server
-
- ESC
- :wq
Apache加入系统服务
- chkconfig --add httpd
- chkconfig --list httpd
设置开机启动并启动
- systemctl start httpd
- systemctl enable httpd
查看应用状态
ps aux|grep httpd
开启防火墙指定端口
- yum install firewalld
- systemctl enable firewalld
- systemctl start firewalld
- firewall-cmd --zone=public --add-port=80/tcp --permanent
- firewall-cmd --zone=public --add-port=443/tcp --permanent
- firewall-cmd --reload
访问Web服务查看是否正常运行
- # 访问http://xxx.xxx.xxx.xxx
- # 显示: It works! 表示一切正常
apache-2.4.x主配置文件httpd.conf(干货)
- # apache安装目录
- ServerRoot "/usr/local/apache"
- # 默认监听端口
- #Listen 0.0.0.0:80
- Listen 80
- # 加载模块
- LoadModule mpm_event_module modules/mod_mpm_event.so
- LoadModule authn_file_module modules/mod_authn_file.so
- LoadModule authn_core_module modules/mod_authn_core.so
- LoadModule authz_host_module modules/mod_authz_host.so
- LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
- LoadModule authz_user_module modules/mod_authz_user.so
- LoadModule authz_core_module modules/mod_authz_core.so
- LoadModule access_compat_module modules/mod_access_compat.so
- LoadModule auth_basic_module modules/mod_auth_basic.so
- LoadModule reqtimeout_module modules/mod_reqtimeout.so
- LoadModule filter_module modules/mod_filter.so
- LoadModule mime_module modules/mod_mime.so
- LoadModule log_config_module modules/mod_log_config.so
- LoadModule env_module modules/mod_env.so
- LoadModule headers_module modules/mod_headers.so
- LoadModule setenvif_module modules/mod_setenvif.so
- LoadModule version_module modules/mod_version.so
- LoadModule unixd_module modules/mod_unixd.so
- LoadModule status_module modules/mod_status.so
- LoadModule autoindex_module modules/mod_autoindex.so
- LoadModule dir_module modules/mod_dir.so
- LoadModule alias_module modules/mod_alias.so
- LoadModule php7_module modules/libphp7.so
- #LoadModule mpm_prefork_module modules/mod_mpm_prefork.so
- #LoadModule mpm_worker_module modules/mod_mpm_worker.so
- #LoadModule authn_dbm_module modules/mod_authn_dbm.so
- #LoadModule authn_anon_module modules/mod_authn_anon.so
- #LoadModule authn_dbd_module modules/mod_authn_dbd.so
- #LoadModule authn_socache_module modules/mod_authn_socache.so
- #LoadModule authz_dbm_module modules/mod_authz_dbm.so
- #LoadModule authz_owner_module modules/mod_authz_owner.so
- #LoadModule authz_dbd_module modules/mod_authz_dbd.so
- #LoadModule auth_form_module modules/mod_auth_form.so
- #LoadModule auth_digest_module modules/mod_auth_digest.so
- #LoadModule allowmethods_module modules/mod_allowmethods.so
- #LoadModule file_cache_module modules/mod_file_cache.so
- #LoadModule cache_module modules/mod_cache.so
- #LoadModule cache_disk_module modules/mod_cache_disk.so
- #LoadModule cache_socache_module modules/mod_cache_socache.so
- #LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
- #LoadModule socache_dbm_module modules/mod_socache_dbm.so
- #LoadModule socache_memcache_module modules/mod_socache_memcache.so
- #LoadModule watchdog_module modules/mod_watchdog.so
- #LoadModule macro_module modules/mod_macro.so
- #LoadModule dbd_module modules/mod_dbd.so
- #LoadModule dumpio_module modules/mod_dumpio.so
- #LoadModule buffer_module modules/mod_buffer.so
- #LoadModule ratelimit_module modules/mod_ratelimit.so
- #LoadModule ext_filter_module modules/mod_ext_filter.so
- #LoadModule request_module modules/mod_request.so
- #LoadModule include_module modules/mod_include.so
- #LoadModule substitute_module modules/mod_substitute.so
- #LoadModule sed_module modules/mod_sed.so
- #LoadModule deflate_module modules/mod_deflate.so
- #LoadModule log_debug_module modules/mod_log_debug.so
- #LoadModule logio_module modules/mod_logio.so
- #LoadModule expires_module modules/mod_expires.so
- #LoadModule unique_id_module modules/mod_unique_id.so
- #LoadModule remoteip_module modules/mod_remoteip.so
- #LoadModule proxy_module modules/mod_proxy.so
- #LoadModule proxy_connect_module modules/mod_proxy_connect.so
- #LoadModule proxy_ftp_module modules/mod_proxy_ftp.so
- #LoadModule proxy_http_module modules/mod_proxy_http.so
- #LoadModule proxy_fcgi_module modules/mod_proxy_fcgi.so
- #LoadModule proxy_scgi_module modules/mod_proxy_scgi.so
- #LoadModule proxy_fdpass_module modules/mod_proxy_fdpass.so
- #LoadModule proxy_wstunnel_module modules/mod_proxy_wstunnel.so
- #LoadModule proxy_ajp_module modules/mod_proxy_ajp.so
- #LoadModule proxy_balancer_module modules/mod_proxy_balancer.so
- #LoadModule proxy_express_module modules/mod_proxy_express.so
- #LoadModule proxy_hcheck_module modules/mod_proxy_hcheck.so
- #LoadModule session_module modules/mod_session.so
- #LoadModule session_cookie_module modules/mod_session_cookie.so
- #LoadModule session_dbd_module modules/mod_session_dbd.so
- #LoadModule slotmem_shm_module modules/mod_slotmem_shm.so
- #LoadModule ssl_module modules/mod_ssl.so
- #LoadModule lbmethod_byrequests_module modules/mod_lbmethod_byrequests.so
- #LoadModule lbmethod_bytraffic_module modules/mod_lbmethod_bytraffic.so
- #LoadModule lbmethod_bybusyness_module modules/mod_lbmethod_bybusyness.so
- #LoadModule lbmethod_heartbeat_module modules/mod_lbmethod_heartbeat.so
- #LoadModule dav_module modules/mod_dav.so
- #LoadModule info_module modules/mod_info.so
- #LoadModule dav_fs_module modules/mod_dav_fs.so
- #LoadModule vhost_alias_module modules/mod_vhost_alias.so
- #LoadModule negotiation_module modules/mod_negotiation.so
- #LoadModule actions_module modules/mod_actions.so
- #LoadModule speling_module modules/mod_speling.so
- #LoadModule userdir_module modules/mod_userdir.so
- #LoadModule rewrite_module modules/mod_rewrite.so
- # 有些配置在指定模块被成功加载后才能添加
- <IfModule !mpm_prefork_module>
- #LoadModule cgid_module modules/mod_cgid.so
- </IfModule>
- <IfModule mpm_prefork_module>
- #LoadModule cgi_module modules/mod_cgi.so
- </IfModule>
- <IfModule unixd_module>
- # 子进程用户
- User www
- Group www
- </IfModule>
- # 主服务配置
- ServerAdmin test@test.com
- ServerName localhost:80
- <FilesMatch \.php$>
- SetHandler application/x-httpd-php
- </FilesMatch>
- # 这里是全局目录默认规则
- <Directory />
- AllowOverride none
- Require all denied
- </Directory>
- # web目录默认位置
- DocumentRoot "/www"
- <Directory "/www">
- Options Indexes FollowSymLinks
- AllowOverride None
- Require all granted
- </Directory>
- # 不指定文件名时默认访问路径下的文件
- <IfModule dir_module>
- DirectoryIndex index.php index.html index.htm
- </IfModule>
- # 防止 .ht* 文件被从Web上访问
- <Files ".ht*">
- Require all denied
- </Files>
- # 错误日志位置
- ErrorLog "logs/error_log"
- # 错误日志级别: 警告
- LogLevel warn
- # 日志格式
- <IfModule log_config_module>
- LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
- LogFormat "%h %l %u %t \"%r\" %>s %b" common
- <IfModule logio_module>
- LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
- </IfModule>
- CustomLog "logs/access_log" common
- #CustomLog "logs/access_log" combined
- </IfModule>
- # alias_module
- <IfModule alias_module>
- ScriptAlias /cgi-bin/ "/usr/local/apache/cgi-bin/"
- </IfModule>
- # cgid_module
- <IfModule cgid_module>
- #Scriptsock cgisock
- </IfModule>
- # cgi-bin目录
- <Directory "/usr/local/apache/cgi-bin">
- AllowOverride None
- Options None
- Require all granted
- </Directory>
- # 请求头
- <IfModule headers_module>
- RequestHeader unset Proxy early
- </IfModule>
- # mime类型对照
- <IfModule mime_module>
- TypesConfig /etc/mime.types
- AddType application/x-compress .Z
- AddType application/x-gzip .gz .tgz
- #AddEncoding x-compress .Z
- #AddEncoding x-gzip .gz .tgz
- #AddType application/x-gzip .tgz
- #AddType text/html .shtml
- #AddHandler cgi-script .cgi
- #AddHandler type-map var
- #AddOutputFilter INCLUDES .shtml
- </IfModule>
- #MIMEMagicFile /etc/magic
- #ErrorDocument 500 "The server made a boo boo."
- #ErrorDocument 404 /missing.html
- #ErrorDocument 404 "/cgi-bin/missing_handler.pl"
- #ErrorDocument 402 http://www.example.com/subscription_info.html
- #MaxRanges unlimited
- #EnableMMAP off
- #EnableSendfile on
-
- # Server-pool management (MPM specific)
- #Include /etc/extra/httpd-mpm.conf
-
- # Multi-language error messages
- #Include /etc/extra/httpd-multilang-errordoc.conf
-
- # Fancy directory listings
- #Include /etc/extra/httpd-autoindex.conf
-
- # Language settings
- #Include /etc/extra/httpd-languages.conf
-
- # User home directories
- #Include /etc/extra/httpd-userdir.conf
-
- # Real-time info on requests and configuration
- #Include /etc/extra/httpd-info.conf
-
- # Virtual hosts
- #Include /etc/extra/httpd-vhosts.conf
-
- # Local access to the Apache HTTP Server Manual
- #Include /etc/extra/httpd-manual.conf
-
- # Distributed authoring and versioning (WebDAV)
- #Include /etc/extra/httpd-dav.conf
-
- # Various default settings
- #Include /etc/extra/httpd-default.conf
-
- # proxy_html_module
- <IfModule proxy_html_module>
- Include /etc/extra/proxy-html.conf
- </IfModule>
-
- # https相关配置
- # Secure (SSL/TLS) connections
- #Include /etc/extra/httpd-ssl.conf
- <IfModule ssl_module>
- SSLRandomSeed startup builtin
- SSLRandomSeed connect builtin
- </IfModule>

虚拟主机(Virtual hosts)配置httpd-vhosts.conf
- # 打开'#Include /xxx/httpd-vhosts.conf'的注释才能生效
- # 监听80端口
- <VirtualHost *:80>
- # 异常时向test@test.com发送邮件
- ServerAdmin test@test.com
- # web真实目录
- DocumentRoot "/www/test"
- # 服务域名
- ServerName www.test.com
- # 服务别名(可以没有)
- ServerAlias alias.test.com
- # 错误日志位置(mod_log_config)
- ErrorLog "logs/error_log"
- # 访问日志位置以及日志级别(mod_log_config)
- CustomLog "logs/access_log" common
- </VirtualHost>

Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。