
6.用户认证
vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf //把123.com那个虚拟主机编辑成如下内容
DocumentRoot “/usr/local/apache2.4/docs/www.111.com”
ServerName www.111.com
AllowOverride AuthConfig
AuthName “abc.com user auth”
AuthType Basic
AuthUserFile /usr/local/apache2.4/docs/.htpasswd
require valid-user
/usr/local/apache2.4/bin/htpasswd -cm /data/.htpasswd ytl
重新加载配置-t , graceful

7.域名跳转 http://111.com/$1 [R=301,L]
DocumentRoot “/usr/local/apache2.4/docs/www.111.com”
ServerName www.111.com
ServerAlias 111.com
RewriteEngine on
RewriteCond %{HTTPHOST} !^.111.com$
RewriteRule ^/(.)$
/usr/local/apache2/bin/apachectl -M|grep -i rewrite
8.访问日志
vim /usr/local/apache2.4/conf/httpd.conf
搜索LogFormat
LogFormat “%h %l %u %t \”%r\” %>s %b \”%{Referer}i\” \”%{User-Agent}i\”” combined
LogFormat “%h %l %u %t \”%r\” %>s %b” common
<VirtualHost :80>
DocumentRoot “/usr/local/apache2.4/docs/www.111.com”
ServerName www.111.com
ServerAlias 111.com
CustomLog “logs/123.com-access_log” combined
重新加载配置文件 -t,graceful
curl -xlocalhost-I 111.com
9.访问日志不记录指定类型文件
SetEnvIf Request_URI “..gif$” image-request
SetEnvIf Request_URI “..jpg$” image-request
SetEnvIf Request_URI “..png$” image-request
SetEnvIf Request_URI “..bmp$” image-request
SetEnvIf Request_URI “..swf$” image-request
SetEnvIf Request_URI “..js$” image- request
SetEnvIf Request_URI “..css$” image- request
CustomLog “logs/www.111.com-access_log” combined env=!image-request
重新加载配置文件 -t, graceful
mkdir /data/wwwroot/www.111.com/images 创建目录,并在这目录下上传一个图片
10.访问日志切割
SetEnvIf Request_URI “..gif$” image-request
SetEnvIf Request_URI “..jpg$” image-request
SetEnvIf Request_URI “..png$” image-request
SetEnvIf Request_URI “..bmp$” image-request
SetEnvIf Request_URI “..swf$” image-request
SetEnvIf Request_URI “..js$” image- request
SetEnvIf Request_URI “..css$” image- request
CustomLog “|/usr/local/apache2.4/bin/rotatelogs -l logs/www.111.com-access%Y%m%d.1og 86400”combined env=!image-request
重新加载配置文件 -t, graceful
ls /usr/local/apache2.4/logs
11.设置静态元素过期时间
# ExpiresActive on
# ExpiresByType image/gif “access plus 1 days”
# ExpiresByType image/jpeg “access plus 24 hours”
# ExpiresByType image/png “access plus 24 hours”
# ExpiresByType text/css “now plus 2 hour”
# ExpiresByType application/x-javascript “now plus 2 hours”
# ExpiresByType application/javascript “now plus 2 hours”
# ExpiresByType application/x-shockwave-flash “now plus 2 hours”
# ExpiresDefault “now plus 0 min”
#
需要expires_module
curl测试,看cache-control: max-age
12.配置防盗链
# SetEnvIfNoCase Referer “http://www.111.com“ local_ref
# SetEnvIfNoCase Referer “http://111.com“ local_ref
# SetEnvIfNoCase Referer “^$” local_ref
#
# Order Allow,Deny
# Allow from env=local_ref
#
#
curl -e “http://www.ytlinux.com/123.html“ 自定义referer

13.访问控制-directory
# php_admin_flag engine off
#
# Order deny,allow
# Deny from all
# Allow from 127.0.0.1
#
#
">mkdir -p /usr/local/apache2.4/docs/www.111.com
#/usr/local/apache2.4/bin/apachectl -t
#/usr/local/apache2.4/bin/apachectl graceful
(3)配置验证

6.用户认证
vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf //把123.com那个虚拟主机编辑成如下内容
DocumentRoot “/usr/local/apache2.4/docs/www.111.com”
ServerName www.111.com
AllowOverride AuthConfig
AuthName “abc.com user auth”
AuthType Basic
AuthUserFile /usr/local/apache2.4/docs/.htpasswd
require valid-user
/usr/local/apache2.4/bin/htpasswd -cm /data/.htpasswd ytl
重新加载配置-t , graceful

7.域名跳转
DocumentRoot “/usr/local/apache2.4/docs/www.111.com”
ServerName www.111.com
ServerAlias 111.com
RewriteEngine on
RewriteCond %{HTTPHOST} !^.111.com$
RewriteRule ^/(.)$ http://111.com/$1 [R=301,L]
/usr/local/apache2/bin/apachectl -M|grep -i rewrite
8.访问日志
vim /usr/local/apache2.4/conf/httpd.conf
搜索LogFormat
LogFormat “%h %l %u %t \”%r\” %>s %b \”%{Referer}i\” \”%{User-Agent}i\”” combined
LogFormat “%h %l %u %t \”%r\” %>s %b” common
<VirtualHost :80>
DocumentRoot “/usr/local/apache2.4/docs/www.111.com”
ServerName www.111.com
ServerAlias 111.com
CustomLog “logs/123.com-access_log” combined
重新加载配置文件 -t,graceful
curl -xlocalhost-I 111.com
9.访问日志不记录指定类型文件
SetEnvIf Request_URI “..gif$” image-request
SetEnvIf Request_URI “..jpg$” image-request
SetEnvIf Request_URI “..png$” image-request
SetEnvIf Request_URI “..bmp$” image-request
SetEnvIf Request_URI “..swf$” image-request
SetEnvIf Request_URI “..js$” image- request
SetEnvIf Request_URI “..css$” image- request
CustomLog “logs/www.111.com-access_log” combined env=!image-request
重新加载配置文件 -t, graceful
mkdir /data/wwwroot/www.111.com/images 创建目录,并在这目录下上传一个图片
10.访问日志切割
SetEnvIf Request_URI “..gif$” image-request
SetEnvIf Request_URI “..jpg$” image-request
SetEnvIf Request_URI “..png$” image-request
SetEnvIf Request_URI “..bmp$” image-request
SetEnvIf Request_URI “..swf$” image-request
SetEnvIf Request_URI “..js$” image- request
SetEnvIf Request_URI “..css$” image- request
CustomLog “|/usr/local/apache2.4/bin/rotatelogs -l logs/www.111.com-access%Y%m%d.1og 86400”combined env=!image-request
重新加载配置文件 -t, graceful
ls /usr/local/apache2.4/logs
11.设置静态元素过期时间
# ExpiresActive on
# ExpiresByType image/gif “access plus 1 days”
# ExpiresByType image/jpeg “access plus 24 hours”
# ExpiresByType image/png “access plus 24 hours”
# ExpiresByType text/css “now plus 2 hour”
# ExpiresByType application/x-javascript “now plus 2 hours”
# ExpiresByType application/javascript “now plus 2 hours”
# ExpiresByType application/x-shockwave-flash “now plus 2 hours”
# ExpiresDefault “now plus 0 min”
#
需要expires_module
curl测试,看cache-control: max-age
12.配置防盗链
# SetEnvIfNoCase Referer “http://www.111.com“ local_ref
# SetEnvIfNoCase Referer “http://111.com“ local_ref
# SetEnvIfNoCase Referer “^$” local_ref
#
# Order Allow,Deny
# Allow from env=local_ref
#
#
curl -e “http://www.ytlinux.com/123.html“ 自定义referer

13.访问控制-directory
# php_admin_flag engine off
#
# Order deny,allow
# Deny from all
# Allow from 127.0.0.1
#
#
安装mysql
useradd -s /sbin/nologin mysql<br /> 建立MySQL用户,因为启动MySQL需要该用户<br />mkdir -p /data/mysql<br /> 创建datadir,数据库文件会放到这里面<br />chown -R mysql:mysql /data/mysql <br /> 更改权限<br />mv mysql-5.6.35-linux-glibc2.12-x86_64 /usr/local/mysql<br /> 挪动位置<br />cd /usr/local/mysql<br /> ./scripts/mysql_install_db --user=mysql --datadir=/data/mysql<br /> --user表示定义数据库的以哪个用户的身份运<br /> --datadir表示定义数据库的安装目录<br />cp support-file/my-default.cnf /etc/my.cnf<br />vi my-default.cnf <br />修改配置文件<br /> These are commonly set ,remove the # and set as required<br /> Basedir=/usr/local/mysql <br /> basedir表示MySQL包所在路径<br /> Datadir=/data/mysql/datadir <br /> 表示定义存放数据的位置<br /> Port=3306 <br /> port表示定义MySQL服务监听的端口号<br /> Server_id=128 <br /> 表示该MySQL服务的ID号<br /> socket = /tmp/mysql.sock <br /> 定义MySQL服务监听的套接字地址<br />cp support-files/mysql.server /etc/init.d/mysql<br /> 复制启动脚本文件<br />chmod 755 /etc/init.d/mysql <br /> 修改启动脚本文件的属性<br />Vim /etc/init.d/mysql<br /> 修改启动脚本<br />chkconfig --add mysql<br /> 把mysql服务加到系统服务列表中<br />chkconfig mysql on<br /> 开机就启动<br />service mysql start<br />启动服务<br /><br />遇到的问题<br /> 安装Perl组件时出现问题<br /> yum install -y perl perl-devel<br /> yum install libaio* -y<br />2.安装Apache<br /> (1)解压资源包<br />tar -zxvf http-2.4.39.tar<br /> tar -zxvf apr-1.6.5.tar<br /> tar -zxvf apr-util-1.6.1.tar<br />(2)安装和配置<br /> cd /usr/local/src/apr-1.6.5<br /> ./configure --prefix=/usr/local/apr<br /> make &&make install<br /> cd /usr/local/src/apr-util-1.6.1. <br /> ./configure --prefix=/usr/local/apr-util --with-apr=/usr/local/apr<br /> make &&make install<br /> cd /usr/local/src/http-2.4.39<br /> ./configure --prefix=/usr/1ocal/apache2.4 --perefix指定安装目录<br />--with-apr=/usr/local/apr <br />--with-apr-util=/usr/local/apr-util <br />--enable-so --enable-so表示启用DSO<br />--enable-mods-shared=most --enable -mods- shared表示以共享形式安装模块<br />yum install -y pcre pcre-devel 为避免make时出错提前安装库文件 <br />make && make install<br />/usr/local/apache2.4/bin/apachectl -M<br />安装成功<br /> <br />3.安装PHP<br /> (2)解压
(3)安装和配置
yum install -y libxml2-devel
yum install -y openssl openssl -devel
yum install -y bzip2 bzip2-devel
yum install -y libpng libpng-devel
yum install -y freetype freetype-devel
yum install -y epel-release
yum install -y libmcrypt-devel
cd php-5.6.30
./configure —prefix=/usr/local/php —with-apxs2=/usr/local/apache2.4/bin/apxs —with-config-file-path=/usr/local/php/etc —with-mysql=/usr/local/mysql —with-libxml-dir—with-gd —with-jpeg-dir —with-png-dir—with-freetype-dir —with-iconv-dir—with-zlib-dir —with-bz2 —with-openssl—with-mcrypt —enable-soap—enable-gd-native-ttf —enable-mbstring—enable-sockets —enable-exif
make && make install

4.httpd解析PHP
vim /usr/local/apache2.4/conf/httpd.conf
编辑配置文件
搜ServerName,把ServerName www.example.com:80前#去掉;
AllowOverride none
Require all granted
允许所有请求访问
搜索AddType application/x-gzip .gz .tgz,在下面添加一行 AddType application/x-httpd-php .php
DirectoryIndex index.html index.php
测试安装
测试配置文件是否正确
/usr/local/apache2.4/bin/apachectl -t
检验配置文件是否正确:Syntax OK
/usr/local/apache2.4/bin/apachectl start
启动httpd命令
netstat -lnp |grep httpd
查看是否启动
curl localhostIt works!
使用curl命令简单测试,,显示了就是成功
② 测试是否正确解析PHP
vim /usr/local/apache2.4/htdocs/1.php
5.默认虚拟主机
ServerAdmin admin@wang.com
DocumentRoot “/usr/local/apache2.4/docs/www.111.com.com”
ServerName www.111.com
ServerAlias 111.com
ErrorLog “logs/www.111.com-error_log”
CustomLog “logs/www.111.com-access_log” combined
DocumentRoot “/usr/local/apache2.4/docs/www.111.com”
ServerName www.111.com
mkdir -p /usr/local/apache2.4/docs/www.111.com
#/usr/local/apache2.4/bin/apachectl -t
#/usr/local/apache2.4/bin/apachectl graceful
(3)配置验证


6.用户认证
vim /usr/local/apache2.4/conf/extra/httpd-vhosts.conf //把123.com那个虚拟主机编辑成如下内容
DocumentRoot “/usr/local/apache2.4/docs/www.111.com”
ServerName www.111.com
AllowOverride AuthConfig
AuthName “abc.com user auth”
AuthType Basic
AuthUserFile /usr/local/apache2.4/docs/.htpasswd
require valid-user
/usr/local/apache2.4/bin/htpasswd -cm /data/.htpasswd ytl
重新加载配置-t , graceful


7.域名跳转
DocumentRoot “/usr/local/apache2.4/docs/www.111.com”
ServerName www.111.com
ServerAlias 111.com
RewriteEngine on
RewriteCond %{HTTPHOST} !^.111.com$
RewriteRule ^/(.)$ http://111.com/$1 [R=301,L]
/usr/local/apache2/bin/apachectl -M|grep -i rewrite

8.访问日志
vim /usr/local/apache2.4/conf/httpd.conf
搜索LogFormat
LogFormat “%h %l %u %t \”%r\” %>s %b \”%{Referer}i\” \”%{User-Agent}i\”” combined
LogFormat “%h %l %u %t \”%r\” %>s %b” common
<VirtualHost :80>
DocumentRoot “/usr/local/apache2.4/docs/www.111.com”
ServerName www.111.com
ServerAlias 111.com
CustomLog “logs/123.com-access_log” combined
重新加载配置文件 -t,graceful
curl -xlocalhost-I 111.com

9.访问日志不记录指定类型文件
SetEnvIf Request_URI “..gif$” image-request
SetEnvIf Request_URI “..jpg$” image-request
SetEnvIf Request_URI “..png$” image-request
SetEnvIf Request_URI “..bmp$” image-request
SetEnvIf Request_URI “..swf$” image-request
SetEnvIf Request_URI “..js$” image- request
SetEnvIf Request_URI “..css$” image- request
CustomLog “logs/www.111.com-access_log” combined env=!image-request
重新加载配置文件 -t, graceful
mkdir /data/wwwroot/www.111.com/images 创建目录,并在这目录下上传一个图片
10.访问日志切割
SetEnvIf Request_URI “..gif$” image-request
SetEnvIf Request_URI “..jpg$” image-request
SetEnvIf Request_URI “..png$” image-request
SetEnvIf Request_URI “..bmp$” image-request
SetEnvIf Request_URI “..swf$” image-request
SetEnvIf Request_URI “..js$” image- request
SetEnvIf Request_URI “..css$” image- request
CustomLog “|/usr/local/apache2.4/bin/rotatelogs -l logs/www.111.com-access%Y%m%d.1og 86400”combined env=!image-request
重新加载配置文件 -t, graceful
ls /usr/local/apache2.4/logs

11.设置静态元素过期时间
# ExpiresActive on
# ExpiresByType image/gif “access plus 1 days”
# ExpiresByType image/jpeg “access plus 24 hours”
# ExpiresByType image/png “access plus 24 hours”
# ExpiresByType text/css “now plus 2 hour”
# ExpiresByType application/x-javascript “now plus 2 hours”
# ExpiresByType application/javascript “now plus 2 hours”
# ExpiresByType application/x-shockwave-flash “now plus 2 hours”
# ExpiresDefault “now plus 0 min”
#
需要expires_module
curl测试,看cache-control: max-age

12.配置防盗链
# SetEnvIfNoCase Referer “http://www.111.com“ local_ref
# SetEnvIfNoCase Referer “http://111.com“ local_ref
# SetEnvIfNoCase Referer “^$” local_ref
#
# Order Allow,Deny
# Allow from env=local_ref
#
#
curl -e “http://www.ytlinux.com/123.html“ 自定义referer


13.访问控制-directory
# php_admin_flag engine off
#
# Order deny,allow
# Deny from all
# Allow from 127.0.0.1
#
#

DocumentRoot “/usr/local/apache2.4/docs/www.111.com”
ServerName www.111.com
AllowOverride AuthConfig
AuthName “abc.com user auth”
AuthType Basic
AuthUserFile /usr/local/apache2.4/docs/.htpasswd
require valid-user
DocumentRoot “/usr/local/apache2.4/docs/www.111.com”
ServerName www.111.com
ServerAlias 111.com
RewriteEngine on
RewriteCond %{HTTPHOST} !^.111.com$
RewriteRule ^/(.)$ http://111.com/$1 [R=301,L]
# ExpiresActive on
# ExpiresByType image/gif “access plus 1 days”
# ExpiresByType image/jpeg “access plus 24 hours”
# ExpiresByType image/png “access plus 24 hours”
# ExpiresByType text/css “now plus 2 hour”
# ExpiresByType application/x-javascript “now plus 2 hours”
# ExpiresByType application/javascript “now plus 2 hours”
# ExpiresByType application/x-shockwave-flash “now plus 2 hours”
# ExpiresDefault “now plus 0 min”
#
# SetEnvIfNoCase Referer “http://www.111.com“ local_ref
# SetEnvIfNoCase Referer “http://111.com“ local_ref
# SetEnvIfNoCase Referer “^$” local_ref
#
# Order Allow,Deny
# Allow from env=local_ref
#
#
# php_admin_flag engine off
#
# Order deny,allow
# Deny from all
# Allow from 127.0.0.1
#
#
14.禁止解析PHP
php_admin_flag engine off
15.访问控制-user—agent
# RewriteEngine on
# RewriteCond %{HTTP_USER_AGENT} .curl. [NC,OR]
# RewriteCond %{HTTP_USER_AGENT} .baidu.com. [NC]
# RewriteRule . - [F]
#
测试
16.PHP基础配置
eval,assert,popen,passthru,escapeshellarg,escapeshellcmd,passthru,exec,system,chroot,scandir,chgrp,chown,escapeshellcmd,escapeshellarg,shell_exec,proc_get_status,ini_alter,ini_restore,dl,pfsockopen,openlog,syslog,readlink,symlink,leak,popepassthru,stream_socket_server,popen,proc_open,proc_close phpinfo
error_log, log_errors, display_errors, error_reporting
open_basedir 


*







PHP动态扩展模块
解压
tar -xzvf redis-2.2.3.tgz
cd redis-2.2.3
解析配置文件
./configure —with-php-config=/usr/local/php/bin/php-config
安装make
make && make install


