LAMP第二部分apache的配置
1. 下载discuz!
mkdir /data/www
cd /data/www
mv /root/Discuz_X3.2_SC_GBK.zip .
wget http://download.comsenz.com/DiscuzX/3.2/Discuz_X3.2_SC_GBK.zip
unzip Discuz_X3.2_SC_GBK.zip
rm -rf readme/ utility/ 删除这两个目录
mv upload/* .
rm -rf upload
mv Discuz_X3.2_SC_GBK.zip /root/
echo $PATH
ln -s /usr/local/apache2/bin/apachectl /usr/bin/ 做一个软连接,或者加入到系统环境变量中去 /etc/rc.local=========
apachectl -t
apachectl restart
2. 配置第一个虚拟主机
vim /usr/local/apache2/conf/httpd.conf
打开下面这行
#Include conf/extra/httpd-vhosts.conf
vim /usr/local/apache2/conf/extra/httpd-vhosts.conf
加入如下配置:
<VirtualHost *:80>
DocumentRoot "/data/www"
ServerName www.123.com #自定义的
</VirtualHost>
apachectl -t
apachectl graceful 将配置文件重新加载
curl -x127.0.0.1:80 www.111.com 什么都没有输出,测试成功了
curl -x127.0.0.1:80 www.111.com -I 检测状态码302,下面显示是install
按下ctrl+r 就是搜索命令历史,输入命令自动就找到了====
安装discuz
测试一下,在本地hosts加入 192.168.3.129 www.111.com 可以ping一下
在浏览器打开www.111.com 显示discuz的安装页面
同意安装会提示目录不可写,需要改一下所属主组
看apache是属于哪个用户的ps aux |grep httpd
chown -R daemon data config uc_server/data uc_client/data
这时刷新一下安装页面就可以了
===============加入环境变量================
PATH=$PATH:/usr/local/mysql/bin
或者
vim /etc/profile.d/
vim /etc/profile.d/path.sh
里面加入
export PATH=$PATH:/usr/local/mysql/bin
然后
source /etc/profile
echo $PATH
然后输入mysql就可以进入到mysql的命令行了
3. 然后配置mysql,给Discuz!增加一个账户
]#mysqladmin -uroot password '123456'
]#mysql -uroot -p123456 这样子登陆mysql
给mysql root账户设置密码,然后命令行进入mysql,创建新的库,并创建一个新的帐号对该库有所有权限
> create database discuz;
> grant all on discuz.* to 'aming'@'localhost' identified by 'aming123';
> quit
.*是所有的表,all是所有的权限
验证登陆数据库用户
mysql -uaming -paming123
继续安装Discuz!
安装成功
=================
5. 为某个虚拟主机配置用户认证,打开www.111.com/admin.php 需要认证(给后台管理中心配置用户验证)
http://www.lishiming.net/thread-554-1-1.html
vim /usr/local/apache2/conf/extra/httpd-vhosts.conf
虚拟主机配置文件中,找到虚拟配置的地方,<VirtualHost>
在里面加入
<Directory /data/www>
AllowOverride AuthConfig
</Directory>
保存后,然后
创建apache的验证用户
/usr/local/apache2/bin/htpasswd -c /data/.htpasswd aming #/data/.htpasswd是密码文件
cat /data/.htpasswd
#第一次创建用户要用到-c 参数 第2次添加用户,就不用-c参数
增加第二个用户的时候,就不要加-c了,因为-c是创建的意思,如果加上会把这个文件重写。
/usr/local/apache2/bin/htpasswd /data/.htpasswd abiao 第二次创建用户
m 是用md5加密,如果你想修改密码,可以如下
/usr/local/apache2/bin/htpasswd -m /data/.htpasswd test2
重启apache,即可。
vim /usr/local/apache2/conf/extra/httpd-vhosts.conf然后继续在虚拟配置文件中加入
<Directory /data/www/admin.php>
AllowOverride AuthConfig #将要进行用户认证
AuthName "自定义的" #认证的名字
AuthType Basic
AuthUserFile /data/.htpasswd # 这里的/data/.htpasswd你可以随便写一个路径或名字,没有限制
require valid-user #需要这些可用的用户
</Directory >
apachectl -t
apachectl graceful
6. 配置域名跳转
http://www.lishiming.net/thread-603-1-1.html
在虚拟配置文件中加入
ServerAlias www.222.com
然后在本地电脑hosts中解析一下就可以访问了,结论:我们的网站,任何一个域名绑定到你的ip,都可以访问你的虚拟主机
<VirtualHost *:80>
DocumentRoot "/data/www"
ServerName www.111.com
ServerAlias www.222.com
<IfModule mod_rewrite.c>
#需求:要把访问域名 www.222.com 的域名转发到 www.111.com 上
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.222.com$
RewriteRule ^/(.*)$ http://www.111.com/$1 [R=301,L]
</IfModule>
</VirtualHost>
curl -xlocalhost:80 www.111.com -I
测试 curl -xlocalhost:80 www.222.com/1212 -I
如果是多个域名重定向到一个域名
DocumentRoot "/data/www"
ServerName www.111.com
ServerAlias www.222.com 888.com 666.com
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteCond %{HTTP_HOST} ^www.222.com [OR]
RewriteCond %{HTTP_HOST} ^888.com [OR]
RewriteCond %{HTTP_HOST} ^666.com$
RewriteRule ^(.*)$ http://www.111.com/$1 [R=301,L]
</IfModule>
==========
ss -an |grep -ci esta
7. 配置apache的访问日志
首先打开
vim /usr/local/apache2/conf/httpd.conf 主配置文件
找到下面这行,复制粘贴在下面,根据需求改一下
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
改为
LogFormat "%h %u \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" biao
然后在虚拟主机配置文件中打开vim /usr/local/apache2/conf/extra/httpd-vhosts.conf
下面的
CustomLog "/tmp/apache2.log" biao
然后访问查看一下日志 tail -f /tmp/apache2.log
================================
去掉图片日志
在虚拟主机配置#ErrorLog "logs/dummy-host.example.com-error_log"下面加入
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 "/tmp/apache2.log" biao
改成
CustomLog "/tmp/apache2.log" biao env=!image-request
日志切割
在虚拟主机配置改这里
CustomLog "|/usr/local/apache2/bin/rotatelogs -l /tmp/access_%Y%m%d.log 86400" biao env=!image-request
访问测试
www]# ls /tmp/
access_20150701.log
参考资料:
使apache的日志文件里不记录图片文件 http://www.lishiming.net/thread-561-1-1.html
apache 日志中记录代理IP以及真实客户端IP http://www.lishiming.net/thread-960-1-1.html
apache只记录指定URI的日志 http://www.lishiming.net/thread-981-1-1.html
apache日志记录客户端请求的域名 http://www.lishiming.net/thread-1037-1-1.html
apache 日志切割问题 http://www.lishiming.net/thread-566-1-1.html
8. 配置静态文件缓存
http://www.lishiming.net/thread-912-1-1.html
按下f12 可以看到那些静态文件
下次访问就不用从服务器里面取,就是保存在浏览器上,访问用到直接拿出来用
在虚拟主机配置改这里加入
<IfModule mod_expires.c>
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/x-shockwave-flash "now plus 2 hours"
ExpiresDefault "now plus 0 min"
</IfModule>
按下f12 刷新一下,可以看到文件有304 说明这个文件缓存过的。
查看图片的过期缓存
curl -I 'http://www.111.com/static/image/common/logo.png'
Cache-Control: max-age=86400
86400/3600/24=1天,这个可以设置
LAMP第二部分apache的配置的更多相关文章
- centos LAMP第二部分apache配置 下载discuz!配置第一个虚拟主机 安装Discuz! 用户认证 配置域名跳转 配置apache的访问日志 配置静态文件缓存 配置防盗链 访问控制 apache rewrite 配置开机启动apache tcpdump 第二十节课
centos LAMP第二部分apache配置 下载discuz!配置第一个虚拟主机 安装Discuz! 用户认证 配置域名跳转 配置apache的访问日志 配置静态文件缓存 配置防盗链 ...
- LAMP第二部分apache配置
课程大纲:1. 下载discuz! mkdir /data/wwwcd /data/wwwwget http://download.comsenz.com/DiscuzX/3.2/Discuz_X3 ...
- 阿里云服务器 ECS 部署lamp:centos+apache+mysql+php安装配置方法 (centos7)
阿里云服务器 ECS 部署lamp:centos+apache+mysql+php安装配置方法 (centos7) 1.效果图 1 2. 部署步骤 1 1. mysql安装附加(centos7) 7 ...
- CentOS 6.3安装配置LAMP服务器(Linux+Apache+MySQL+PHP5)
服务器系统环境:CentOS 6.3 客户端系统环境:Windows 7 ultimate(x86)sp1 简体中文旗舰版 ※ 本文档描述了如何在Linux服务器配置Apache.Mysql.PHP ...
- LNMP 与 LAMP 架构的区别及配置解决方案
2014-12-31 10:33| 发布者: digitser| 查看: 5618| 评论: 0|原作者: liangsheng 摘要: LNMP 与 LAMP 架构的区别及配置解决方案 LNMP 的 ...
- centos apache svn配置
单独安装svn服务: 安装svn软件 yum install subversion 创建根目录 mkdir -p /var/www/svn 创建版本库repos svnadmin create /va ...
- ZH奶酪:Ubuntu 14.04安装LAMP(Linux,Apache,MySQL,PHP)
(Linux Operating System,Apache Web Server,MySQL database,PHP) 首先,一个三行命令搞定的方法: sudo apt-get update su ...
- 关于Apache的配置方法和步骤
一.下载.安装和卸载 网址:https://httpd.apache.org/docs/current/platform/windows.html#down 点击ApacheHaus,在里面下载任何版 ...
- LNMP + Apache 架构配置
从事前端开发已3年有余,越来越发现前端开发要学习的知识已不仅仅是html+css+js那么简单了,2017年市场上就有了大前端的概念,可以说对前端工程师的要求也越来越高了,从招聘的要求中可以看到熟悉一 ...
随机推荐
- xtrabackup支持的engine
xtrabackup支持的engine 1.InnoDB/XtraDB Hot backup 2.MyISAM with read-lock 3.Archive,CSV with read-l ...
- hdu-2256 Problem of Precision---矩阵快速幂+数学技巧
题目链接: http://acm.hdu.edu.cn/showproblem.php?pid=2256 题目大意: 题目要求的是(sqrt(2)+sqrt(3))^2n %1024向下取整的值 解题 ...
- Linux下bash的快捷键
Ctrl + A :切换到命令行开始 Ctrl + E :切换到命令行末尾 Ctrl + L : 清屏,相当于clear Ctrl + U :清除剪切光标前的内容 Ctrl + K :剪切清除光标后 ...
- java常用 开源
http://sourceforge.nethttp://code.google.com/hosting/http://www.open-open.com/code/tags/Javahttp://w ...
- C# FileInfo 类
FileInfo类不像File类,它没有静态方法,仅可用于实例化的对像.FileInfo对像表示在磁盘或网络位置的文件,注意它不是流,为了读写文件,必须创建Stream对像. fileInfo类提供了 ...
- eclipse关闭无用启动项,降低内存占用
1,我使用的eclipse版本 2.打开windows-->preference 3,勾选掉无用的启动项,我的已经去掉过了, 4,重启eclipse,如果操作后导致一些必须的功能不能用了,可以点 ...
- 关于小程序button控件上下边框的显示和隐藏问题
问题: 小程序的button控件上下有一条淡灰色的边框,在空件上加上了样式 border:(none/0); 都没办法让button上下的的边框隐藏: 代码如下 <button class=&q ...
- 通过rsync+inotify实现数据实时备份
rsync的优点与不足 与传统的cp,scp,tar,备份方式相比,rsync具有安全性高备份迅速支持增量备份的优点,可以满足对实时性要求不高的需求,例如定期备份文件服务器数据到远端服务器,但是,当数 ...
- 打开POST传参的弹出窗口
//穿件 function openPostPopWindow(url,param,target){ var $form = $("<form></form>&quo ...
- 动态规划:HDU3496-Watch The Movie(二维费用的背包问题)
Watch The Movie Time Limit: 3000/1000 MS (Java/Others) Memory Limit: 65535/65535 K (Java/Others) ...