////////////////配置Apache////////////////////////////

拿一个discuz来演示

LFS是什么,然后去掌握以下吧,对我们的提升很大?????
听说广州的企业对实习期的家伙搭建这个

让Apache开机启动
/usr/local/apache2/bin/apachectl start放到
/etc/init.d/rc.local

mysql -uroot
登陆MySQL
如果没有,就做个软链接ln -s /usr/local/mysql/bin/mysql /usr/bin/mysql

如果不能登录,试一下/usr/local/mysql/bin/mysql -uroot

/usr/local/apache2/bin/htpasswd -c /data/.htpasswd aming

一、下面开始
1.下载discuz
2.mkdir /data/www
3.cd /data/www/
4.wgethttp://120.198.248.28/cache/download.comsenz.com/DiscuzX/3.2/Discuz_X3.2_SC_GBK.zipich_args2=3426173414008287_2fcaee071c2945291f250552d44badc1_10001002_9c886c2cd6c6f3d9913c518939a83798_777951d2fa16026f35b1e7e5ce65a523
5.unzip Discuz....
6.mv upload/* .
7.rm - rf Dis....zip readme/ utility/

二、配置虚拟主机
删除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>
(如果注释掉了NameVirtualHost *:80 会发生什么问题,在扩展链接有)

三、接着,配置mysql,给Discuz增加一个账户
给MySQL root账户设置密码,然后命令行进入MySQL,创建新的库,并且创建一个新的账号对该库有所有权限:
>create database dazuo;
>grant all on dazuo.* to 'dazuo'@'localhost' identified by 'mylovely5213';
>quit

四、然后,安装discuz
先绑定hosts
192.168.70.128 www.123.com(Windows的host在system32/etc/hosts)
浏览器输入:
www.123.com/install/(如果出现forbidden,现在后面加上index.php,再次出现问题,就去查看配置文件,修改/usr/local/apache2/conf/http.conf里面的Deny from all,改为 Allow)
根据提示,修改对应目录的权限
安装的时候出现乱码
http://ask.apelearn.com/question/9796

cd /data/www
chown daemon:daemon data uc_server/data uc_client/data config

五、再然后,为某个虚拟主机配置用户认证(登陆了才可以访问)

vi /usr/local/apache2/conf/extra/httpd-vhosts.conf
(以后配置文件就是虚拟主机的配置文件,和主配置文件httpd.conf基本没啥关系了)

加上这一段
<Directory /data/www> 或者是<Directory *>
AllowOverride AuthConfig
AuthName "name"
AuthType Basic
AuthUserFile /data/.htpasswd #这个目录可以随便写,没有限制
require valid-user
</Directory>

(.htpasswd是一个密码文件,用/usr/local/apache2/bin/htpasswd -c /data/.htpasswd aming(第一次用要加-c)生成)

六、再再然后,域名跳转
<IfModule mod_rewrite.c>
RewriteEngin on
RewirteCond %{HTTP_HOST}^www.domain1.com$
RewirteRule ^(.*)$ http://www.domain2.com/$1 [R=301,L]
</IfModule>
如果是多个域名,可以这样设置:
<IfModule mod_rewrite.c>
RewriteEngin on
RewirteCond %{HTTP_HOST}^www.domain.com$ [OR]
RewirteCond %{HTTP_HOST}^www.domain1.com$
RewirteRule ^(.*)$ http://www.domain2.com/$1 [R=301,L]
</IfModule>

七、配置Apache的访问日志
ErrorLog "|/usr/local/apache/bin/rotatelog -l /usr/local/apache/logs/oem.discuz.qq.com-error _%Y%m%d:log 86400"
SetEnvIF Request_URI ".*.gif$" image-request

在我们的主配置文件con/http.conf里面的
有个Logfile Format

配置文件里面/usr/local/apache2/conf/extra/httpd-vhosts
#配置日志
ErrorLog ""

八、配置静态文件缓存
<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 hours"
ExpiresByType application/x-javascript "now plus 2 hours"
ExpiresByType application/x-shockwave-flash "now plus 2 hours"
ExpiresDefault "now plus 0 min"
</IfModule>
(还有其他的自己去找,这个是用来设置最大缓存时间的,即max-age)

怎么验证有没有缓存???
在浏览器里面(装一个chrome浏览器玩玩)

在哪里存活?CDN??

配置不识别JS??????

九、配置防 盗链
SetEnvIFNoCase Referer "^http://.*\.yourdomin\.com" local_ref (对我来说是http://www.dazuo.com)
SetEnvIFNoCase Referer ".*\.yourdomin\.com" local_ref (http://www.chenzelin.com)
SetEnvIFNoCase Referer "^$" local_ref
<filesmatch "\.(txt|doc|mp3|zip|rar|jpg|gif)"> (针对哪些做防盗链)
Order Allow,Deny
Allow from env=local_ref
</filesmatch>

怎么检查

(抓包命令是啥!!!)

十、访问控制
<Directory /data/www>
Order deny,allow (Order,后面的deny,allow,哪个在前面,先执行哪个)
Deny from all
Allow from 127.0.0.1
</Directory>

(httpd.conf里面好像有一条相似的)

针对请求的url去限制
<filesmatch"(.*)admin(.*)">
Order deny,allow
Deny from all
Allow from 127.0.0.1
</filesmatch>

某个登陆下禁止解析PHP
<Directory /data/www/path>
php_admin_flag engine off
<filesmatch "(.*)php">
Order deny,allow
Allow from all
</filesmatch>
</Directory>

十一、apache rewrite相关

【CentOS】LAMP相关2的更多相关文章

  1. centos lamp/lnmp阶段复习 以后搬迁discuz论坛不需要重新安装,只需修改配置文件即可 安装wordpress 安装phpmyadmin 定时备份mysql两种方法 第二十五节课

    centos  lamp/lnmp阶段复习 以后搬迁discuz论坛不需要重新安装,只需修改配置文件即可 安装wordpress  安装phpmyadmin  定时备份mysql两种方法  第二十五节 ...

  2. centos LAMP第三部分php,mysql配置 php配置文件 配置php的error_log 配置php的open_basedir 安装php的扩展模块 phpize mysql配置第二十一节课

    centos   LAMP第三部分php,mysql配置 php配置文件   配置php的error_log  配置php的open_basedir 安装php的扩展模块 phpize  mysql配 ...

  3. centos LAMP第二部分apache配置 下载discuz!配置第一个虚拟主机 安装Discuz! 用户认证 配置域名跳转 配置apache的访问日志 配置静态文件缓存 配置防盗链 访问控制 apache rewrite 配置开机启动apache tcpdump 第二十节课

    centos    LAMP第二部分apache配置  下载discuz!配置第一个虚拟主机 安装Discuz! 用户认证 配置域名跳转  配置apache的访问日志  配置静态文件缓存  配置防盗链 ...

  4. 【简书】在阿里云自带的CentOS + LAMP环境下部署一个Laravel项目

    在阿里云自带的CentOS + LAMP环境下部署一个Laravel项目 作者 DonnieZero 关注 2017.07.29 22:02* 字数 2218 阅读 5556评论 3喜欢 1赞赏 1 ...

  5. centos LAMP第四部分mysql操作 忘记root密码 skip-innodb 配置慢查询日志 mysql常用操作 mysql常用操作 mysql备份与恢复 第二十二节课

    centos  LAMP第四部分mysql操作  忘记root密码  skip-innodb 配置慢查询日志 mysql常用操作  mysql常用操作 mysql备份与恢复   第二十二节课 mysq ...

  6. centos LAMP第一部分-环境搭建 Linux软件删除方式,mysql安装,apache,PHP,apache和php结合,phpinfo页面,ldd命令 第十九节课

    centos LAMP第一部分-环境搭建  Linux软件删除方式,mysql安装,apache,PHP,apache和php结合,phpinfo页面,ldd命令 第十九节课 打命令之后可以输入: e ...

  7. 【CentOS】LAMP相关4

    MySQL不支持TAB补全.mysql_history命令历史 用SOCKET形式登陆:mysql -uroot -p123456,mysql -uroot -p123456 -S /var/lib/ ...

  8. 【CentOS】LAMP相关3

    调优,安全如果是运维一个网站,PHP搭建的话,可能会出现500的错误,白页怎么去排查呢,今天就涉及到这方面的东西 http://blog.csdn.net/bsi_l4/article/details ...

  9. CentOS LAMP环境 配置详解

    要想在linux上实现网页服务器(www)需要Apache这个服务器软件,不过Apache仅能提供最基本的静态网站数据而已,想要实现动态网站的话,最好还是要PHP与MySQL的支持,所以下面我们将会以 ...

随机推荐

  1. ORACLE 常见错误

    ora-00904 :   标识符无效:查询语句中的列或表在oracle 中不存在:

  2. sql查找去重复并且字段不为空的数据

    select distinct username,quantity  from Student where isnull(username,'')<>'' and p_id = {1}

  3. Mac Pro 编译安装 Redis 的 PHP 客户端 phpredis

    1.去官网下载 redis 扩展源码包 https://github.com/phpredis/phpredis 2.安装 redis 扩展 /usr/local/src/mac-sdk/source ...

  4. PV、EV、AC、BAC、EAC、ETC等计算公式含义

    PV.EV.AC.BAC.EAC.ETC等计算公式含义 PV Planned Value:计划值 应该完成多少工作, (按照计划截止目前应该花费的预算) AC Actual Cost:实际成本, 完成 ...

  5. pycharm快捷键及一些常用设置

    pycharm快捷键及一些常用设置,有需要的朋友可以参考下. Alt+Enter 自动添加包 Ctrl+t SVN更新 Ctrl+k SVN提交 Ctrl + / 注释(取消注释)选择的行 Ctrl+ ...

  6. jquery_DOM笔记4

    jQuery遍历函数: add()添加,可以是样式,字符串,元素,文本,js对象 andself() 指向匹配元素本身 chilidren() 匹配元素的所有子元素的匹配元素 closest() 从本 ...

  7. MySQL中的常用工具

    一.mysql 客户端连接工具 二.myisampack MyISAM表压缩工具 三.mysqladmin MySQL管理工具 四.mysqlbinlog 日志管理工具 五.mysqlcheck My ...

  8. 关于数组去重的几种方法-------javascript描述

    第一种方法:借助json对象来实现,若json对象中无该属性则添加,否则不添加,最后返回json对象的属性,时间复杂度为O(n) function deleteArrayRepeat(arr) { v ...

  9. Java实现比较版本号

    涉及到客户端的系统中经常需要用到比较版本号的功能,但是比较版本号又不能完全按照字符串比较的方式去用compareTo之类的方法: 这就需要我们总结版本号的通用规则,设计一个比较算法并封装成通用方法来使 ...

  10. monkeyrunner脚本录制

    1.在窗口输入 monkeyrunner monkey_recorder.py  调用录制脚本工具 2.在窗口输入 monkeyrunner monkey_playback.py  d:\game   ...