设为首页 收藏本站
查看: 1321|回复: 0

LAMP第二部分apache配置 discuz

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2015-9-6 09:22:07 | 显示全部楼层 |阅读模式
课程大纲:   
1. 下载discuz!   
mkdir /data/www   
cd /data/www   
wget  http://download.comsenz.com/DiscuzX/3.2/Discuz_X3.2_SC_GBK.zip   
unzip Discuz_X3.2_SC_GBK.zip   
mv upload/*  .   
2. 配置第一个虚拟主机
  vi  /usr/local/apache2/conf/httpd.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>   
3. 配置mysql,给Discuz!增加一个账户   
给mysql root账户设置密码,然后命令行进入mysql,创建新的库,并创建一个新的帐号对该库有所有权限:
  /usr/local/mysql/bin/mysql   ()   
> create database discuz;   
> grant all on discuz.* to 'aming'@'localhost' identified by '123456aminglinux';   
> quit
  [root@localhost # /usr/local/apache2/bin/apachectl restart   
[root@localhost # /usr/local/apache2/bin/apachectl -t
  [root@localhost #chown daemon:daemon  data  uc_server/data  uc_client/data config
  discuz
  aming
  aminglinux
  4. 安装Discuz!
  先绑定hosts   
192.168.11.190  www.123.com   
浏览器输入:   
www.123.com/install/
  1.提示   forbidden  
  [root@wuhan-72 ~]# vim /usr/local/apache2/conf/httpd.conf
  <Directory />
      Options FollowSymLinks
      AllowOverride None
      Order allow,deny
      Allow  from all
  </Directory>
  重启
  2.
  根据提示,修改对应目录的权限   
cd /data/www   
chown daemon:daemon  data  uc_server/data  uc_client/data config   // 让这几个目录支持apache运行帐号可写   
file:///C:/Users/sd/AppData/Local/YNote/data/qqBD8E7ABEFC07F0C3CD3694C1B8357234/e73e77252aba41bbbb3499ab1dc96771/attachment.png?1441281688697   
编辑: vi /usr/local/apache2/conf/extra/httpd-vhosts.conf   
5. 为某个虚拟主机配置用户认证   
http://www.lishiming.net/thread-554-1-1.html   
6. 配置域名跳转
  [root@mydata ~]# curl -x111.47.123.72:80   www.sundong.xyz  -I
      <IfModule mod_rewrite.c>   
        RewriteEngine on   
        RewriteCond %{HTTP_HOST} ^www.domain1.com$   
        RewriteRule ^/(.*)$ http://www.domain2.com/$1 [R=301,L]   
    </IfModule>   
如果是多个域名,可以这样设置:   
    <IfModule mod_rewrite.c>   
        RewriteEngine on   
        RewriteCond %{HTTP_HOST} ^www.domain.com [OR]   
        RewriteCond %{HTTP_HOST} ^www.domain1.com$   
        RewriteRule ^/(.*)$ http://www.domain2.com/$1 [R=301,L]   
    </IfModule>   
或者:    <IfModule mod_rewrite.c>   
        RewriteEngine on   
        RewriteCond %{HTTP_HOST} !^www.domain2.com$   
        RewriteRule ^/(.*)$ http://www.domain2.com/$1 [R=301,L]   
    </IfModule>   
7. 配置apache的访问日志   
日志分割    不记录   缓存  
ErrorLog "|/usr/local/apache2/bin/rotatelogs -l /usr/local/apache2/logs/oem.discuz.qq.com-error_%Y%m%d.log 86400"   
    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/bin/rotatelogs -l /usr/local/apache2/logs/oem.discuz.qq.com-access_%Y%m%d.log 86400" combined env=!image-request   
8. 配置   
<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/javascript "now plus 2 hours"   
    ExpiresByType application/x-shockwave-flash "now plus 2 hours"   
    ExpiresDefault "now plus 0 min"   
</IfModule>   
或者使用mod_headers模块实现   
<ifmodule mod_headers.c>   
# htm,html,txt类的文件缓存一个小时   
<filesmatch "\.(html|htm|txt)$">   
header set cache-control "max-age=3600"   
</filesmatch>   
# css, js, swf类的文件缓存一个星期   
<filesmatch "\.(css|js|swf)$">   
header set cache-control "max-age=604800"   
</filesmatch>   
# jpg,gif,jpeg,png,ico,flv,pdf等文件缓存一年   
<filesmatch "\.(ico|gif|jpg|jpeg|png|flv|pdf)$">   
header set cache-control "max-age=29030400"   
</filesmatch>   
</ifmodule>  
  [root@xiantao-11 ~]#  curl  -x116.211.105.59:80    'http://www.sundong.wang/data/attachment/forum/201507/19/165425qknqoq4xqbvwwqn4.png'  -I   
HTTP/1.1 200 OK   
Date: Sat, 18 Jul 2015 14:32:44 GMT   
Server: Apache/2.2.29 (Unix) DAV/2 PHP/5.3.28   
Last-Modified: Sat, 18 Jul 2015 14:32:44 GMT   
ETag: W/"86d5c-35c4-51b3691669c08"   
Accept-Ranges: bytes   
Content-Length: 13764   
Cache-Control: max-age=86400   
Expires: Sun, 19 Jul 2015 14:32:44 GMT   
Content-Type: image/png   
[root@xiantao-11 ~]#
  9. 配置防盗链   
SetEnvIfNoCase Referer "^http://.*\.yourdomin\.com" local_ref   
SetEnvIfNoCase Referer ".*\.yourdomin\.com" local_ref   
SetEnvIfNoCase Referer "^$" local_ref   
<filesmatch "\.(txt|doc|mp3|zip|rar|jpg|gif)">   
Order Allow,Deny   
Allow from env=local_ref   
</filesmatch>   
10. 访问控制   
<Directory /data/www/>   
            Order deny,allow   
            Deny from all   
            Allow from 127.0.0.1   
</Directory>   
针对请求的uri去限制   
    <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   
            Deny from all   
    </filesmatch>   
</Directory>   
11. apache rewrite相关   
apache 限制指定user_agent      
apache 限制某些目录不能访问通过rewrite实现      
apache rewrite 出现死循环      
discuz伪静态配置:   
RewriteCond %{QUERY_STRING} ^(.*)$   
RewriteRule ^/topic-(.+)\.html$ /portal.php?mod=topic&topic=$1&%1   
RewriteCond %{QUERY_STRING} ^(.*)$   
RewriteRule ^/article-([0-9]+)-([0-9]+)\.html$ /portal.php?mod=view&aid=$1&page=$2&%1   
RewriteCond %{QUERY_STRING} ^(.*)$   
RewriteRule ^/forum-(\w+)-([0-9]+)\.html$ /forum.php?mod=forumdisplay&fid=$1&page=$2&%1   
RewriteCond %{QUERY_STRING} ^(.*)$   
RewriteRule ^/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /forum.php?mod=viewthread&tid=$1&extra=page\%3D$3&page=$2&%1   
RewriteCond %{QUERY_STRING} ^(.*)$   
RewriteRule ^/group-([0-9]+)-([0-9]+)\.html$ /forum.php?mod=group&fid=$1&page=$2&%1   
RewriteCond %{QUERY_STRING} ^(.*)$   
RewriteRule ^/space-(username|uid)-(.+)\.html$ /home.php?mod=space&$1=$2&%1   
RewriteCond %{QUERY_STRING} ^(.*)$   
RewriteRule ^/blog-([0-9]+)-([0-9]+)\.html$ /home.php?mod=space&uid=$1&do=blog&id=$2&%1   
RewriteCond %{QUERY_STRING} ^(.*)$   
RewriteRule ^/archiver/(fid|tid)-([0-9]+)\.html$ /archiver/index.php?action=$1&value=$2&%1   
RewriteCond %{QUERY_STRING} ^(.*)$   
RewriteRule ^/([a-z]+[a-z0-9_]*)-([a-z0-9_\-]+)\.html$ /plugin.php?id=$1:$2&%1   

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-109982-1-1.html 上篇帖子: LAMP第一部分-环境搭建 下篇帖子: LAMP第三部分php,mysql配置 discuz
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表