LAMP环境下搭建discuz!论坛

一、下载discuz!

1、创建目录

mkdir /data/www

2、进入目录

cd /data/www

3、下载discuz

wget http://download.comsenz.com/DiscuzX/3.2/Discuz_X3.2_SC_GBK.zip

4、解压discuz

unzip Discuz_X3.2_SC_GBK.zip

5、把upload目录中的文件移动到当前目录下,也就/data/www/目下

mv upload/* .

6、删除掉其他的文件

[[email protected] www]# rm -rfDiscuz_X3.2_SC_GBK.zip readme/ utility/

upload空目录也要删除掉:[[email protected]]# rm -rf upload/

二、配置第一个虚拟主机

1、用vim打开/usr/local/apache2/conf/httpd.conf文件

删除httpd.conf中的这行前面的#号

#Include conf/extra/httpd-vhosts.conf

2、在vim /usr/local/apache2/conf/extra/httpd-vhosts.conf配置文件中

加入如下配置:

<VirtualHost *:80>
   DocumentRoot "/data/www" #网站的根目录
   ServerName www.guhantai.cn #主机域名
   ServerAlias www.guhantai.com.cn #第二个域名
   #ErrorLog "logs/dummy-host.example.com-error_log"
   #CustomLog "logs/dummy-host.example.com-access_log" common
</VirtualHost>>

有两个虚拟主机,删除掉一个,

保存之后退出

3、检查配置文件

[[email protected] www]#/usr/local/apache2/bin/apachectl -t
Syntax OK #出现这个提示就说明已经好了

4、更改Windows hosts文件做解析,将www.guhantai.cn解析到Linux主机的IP

c:\Windows\System32\drivers\etc\hosts

192.168.21.97 www.guhantai.cnwww.guanhaitai.com.cn

5、在Windows浏览器测试的时候提示无法找到网页,错误代码404

6、修改vim/usr/local/apache2/conf/httpd.conf文件,如下图:

7、然后使用如下命令来检测配置文件是否OK:

[[email protected] www]# /usr/local/apache2/bin/apachectl -t
Syntax OK  #出现这个表示配置文件时正确的

8、重启apache服务

[[email protected]]# /usr/local/apache2/bin/apachectl restart

9、再次在浏览器中输入http://www.guhantai.cn/install/的时候访问正常,出现了Discuz的安装向导界面,如下图:

10、点击“我同意”

11、进入到下一步界面,红色的“x”表示是没有写权限,如图所示:

12、使用[[email protected] www]#ps aux |grep http查看Apache使用的账号是daemon

13、给daemon账号授权,让daemon账号对支持Apache的目录进行可写的操作

[[email protected]]# chown -R daemon data/ config/ uc_server/data/ uc_client/data/

14、再次刷新时,红色的“x”消失了,变成写的了

15、点击下一步

进入到设置运行环境界面,选择全新安装,下一步,进入到安

装数据库界面

然后下一步,开始安装

16、安装完成,进入论坛

17、进入论坛的管理中心之后,会出现一个提示,为了安全起见要把install/index.php干掉

删除install/index.php:

[[email protected] www]# rm -rf install/index.php

三、配置mysql,给Discuz!增加一个账户

1、首先检查Mysql有没有启动

[[email protected]]# ps aux |grep mysql

2、登录MySQL

登录MySQL的时候提示没有mysql这个命令,

 [[email protected] www]# mysql -uroot
-bash: mysql: command not found

后来查看passwd文件,发现是禁止登陆的

现在先更改PATH,允许mysql登录:

[[email protected]]#  PATH=$PATH:/usr/local/mysql/bin

也可以这样子做:

[[email protected] www]# /usr/local/mysql/bin/mysql –uroot

现在登录mysql就可以登录进去

[[email protected]]# mysql –uroot

3、给mysql设定密码

[[email protected]]# mysqladmin -uroot password ‘123456‘

123456就是msyql设定的登录密码

用账号和密码登录msyq

[[email protected]]# mysql -uroot -p123456

4、创建一个名称为cheng的数据库

mysql>create database cheng;

5、创建一个用户,用来授权

mysql>grant all on cheng.* to ‘cheng‘@‘localhost‘ identified by ‘123456‘;

grant:授权

all:所有权限

identified:密码

cheng‘@‘localhost:新创建的用户,并且制定登录本机

cheng:第4步创建的数据库名称

这个命令的意思,就是创建一个名称为cheng的用户,只限于在本机登录,而且对cheng这个数据库有所有权限

四、为某个虚拟主机配置用户认证

1、  在虚拟主机配置文件中加入以下内容,创建apache的验证用户

虚拟主机配置文件位置:vim /usr/local/apache2/conf/extra/httpd-vhosts.conf

加入以下内容:

代码如下:

<Directory *>#这里的*表示的是针对这台虚拟主机来的,也可以写成绝对路径/data/www
           AllowOverride AuthConfig
           AuthName "自定义的"
           AuthType Basic
           AuthUserFile /data/.htpasswd  # 这里的/data/.htpasswd你可以随便写一个路径或名字,没有限制
           require valid-user
</Directory>

2、  为用户创建密码文件

[[email protected] www]# /usr/local/apache2/bin/htpasswd -c/data/.htpasswd cheng

为cheng用户创建密码文件,第一次创建.htpasswd需要加上-c,如果.htpasswd已经存在,-c会覆盖

3、  查看/data/.htpasswd文件

[[email protected]]# cat /data/.htpasswd
cheng:v5o0GkUDbIh8c

左边是用户名,冒号右边是密码。密码是加密的

4、  检查配置文件看看有错误没有

[[email protected]]# /usr/local/apache2/bin/apachectl -t
Syntaxerror on line 35 of /usr/local/apache2/conf/extra/httpd-vhosts.conf:
AuthUserFiletakes 1-2 arguments, text file containing user IDs and passwords

提示配置文件的第35行有错误

排错:

使用vim查看/usr/local/apache2/conf/extra/httpd-vhosts.conf文件,看看是哪里错误了

删除多出来的那一行文字,再检查配置文提示已经OK了

[[email protected] www]#/usr/local/apache2/bin/apachectl -t
Syntax OK

在重启一下apache服务

[[email protected] www]#/usr/local/apache2/bin/apachectl restart

5、  在此刷新网页的时候,提示要输入账号和密码才可以访问或者查看论坛

五、配置域名跳转

1、  单域跳转,将一下代码拷贝到/usr/local/apache2/conf/extra/httpd-vhosts.conf文件中的第35行下面。具体如下图所示:

代码如下:

<IfModulemod_rewrite.c>

RewriteEngine on

RewriteCond %{HTTP_HOST} ^www.domain1.com$

RewriteRule ^/(.*)$ http://www.domain2.com/$1 [R=301,L]

</IfModule>

检查配置文件

[[email protected] www]#/usr/local/apache2/bin/apachectl -t

Syntax OK

重启apache服务

[[email protected] www]#/usr/local/apache2/bin/apachectl restart

2、如果是多个域名,可以这样设置:

<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>

方法和但域名设置是一样的,只是代码不一样而已

3、测试

在linux上测试

[[email protected] www]#curl -u cheng:123456-x127.0.0.1:80 www.guhantai.cn/forum.php -I
HTTP/1.1 301 Moved Permanently
Date: Sat, 13 Jun 2015 09:40:47 GMT
Server: Apache/2.2.16 (Unix) DAV/2PHP/5.3.28
Location:http://www.guhantai.com.cn/forum.php
Content-Type: text/html; charset=iso-8859-1

这个测试结果就是正确的

六、配置apache的访问日志

1、  查看日志格式,在主配置文件里面

[[email protected] ~]# vim /usr/local/apache2/conf/httpd.conf
    #
   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>
     # You need to enable mod_logio.c to use %I and %O
     LogFormat "%h %l %u %t \"%r\" %>s %b\"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
</IfModule>

User-Agent:用来识别浏览器的

2、  进入虚拟主机配置文件,配置日志

[[email protected] ~]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf

修改成以下类容具体如图:

代码如下:

#配置日志
ErrorLog"/usr/local/apache2/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"|/usr/local/apache2/bin/rotatelogs -l/usr/local/apache2/logs/1.com-access_%Y%m%d.log 86400" combinedenv=!image-request
</VirtualHost>

3、修改完成之后,保存退出,并且检查配置文是否配置正确,如果正确那么久重启服务

[[email protected] ~]# /usr/local/apache2/bin/apachectl -t

Syntax OK

4、  重启apache服务

[[email protected] ~]# /usr/local/apache2/bin/apachectl restart

5、  查看/usr/local/apache2/logs/目下有没有日志

 [[email protected] www]# ls/usr/local/apache2/logs/
1.com-access_20150613.log access_log                        error_log
1.com-access.log          dummy-host.example.com-error_log httpd.pid

dummy-host.example.com-error_log:这个日志是针推这个虚拟主机的

error_log:这个是针对整个apache的

|/usr/local/apache/bin/rotatelogs -l :日志切割工具

七、配置静态文件缓存

将一下配置文件拷贝到/usr/local/apache2/conf/extra/httpd-vhosts.conf配置文件中去。就拷贝在配置日志文件的下面就可以了。具体如图:

代码如下:

<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 2hour"
   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>

保存退出

检查配置文件是否有错

[[email protected] www]#/usr/local/apache2/bin/apachectl -t

Syntax OK

重启apache服务

[[email protected] www]#/usr/local/apache2/bin/apachectl restart

测试一

在根目录创建一个1.txt文件

[[email protected] www]# touch 1.txt

在1.txt文件中写内容

[[email protected] www]# echo "1111"> 1.txt

在Linux系统中测试

[[email protected] www]# curl -u cheng:123456-x127.0.0.1:80 www.guhantai.com.cn/1.txt -I
HTTP/1.1 200 OK
Date: Sat, 13 Jun 2015 21:29:58 GMT
Server: Apache/2.2.16 (Unix) DAV/2PHP/5.3.28
Last-Modified: Sat, 13 Jun 2015 21:26:28GMT
ETag: "a1547-5-5186ce0b0d705"
Accept-Ranges: bytes
Content-Length: 5
Cache-Control: max-age=0   #这里是数字0表示的还没有缓冲文件
Expires: Sat, 13 Jun 2015 21:29:58 GMT
Content-Type: text/plain

测试二

创建一个1.jpg格式的文件

[[email protected] www]# touch 1.jpg

在Linux系统中测试

[[email protected] www]#curl -u cheng:123456-x127.0.0.1:80 www.guhantai.com.cn/1.jpg -I
HTTP/1.1 200 OK
Date: Sat, 13 Jun 2015 21:38:39 GMT
Server: Apache/2.2.16 (Unix) DAV/2PHP/5.3.28
Last-Modified: Sat, 13 Jun 2015 21:37:54GMT
ETag: "a1548-0-5186d098fe20d"
Accept-Ranges: bytes
Cache-Control: max-age=86400  #这里就有数字了
Expires: Sun, 14 Jun 2015 21:38:39 GMT  #过期时间
Content-Type: image/jpeg

八、配置防盗链

1、在配置文件/usr/local/apache2/conf/extra/httpd-vhosts.conf加入以下代码,代码存放的位置如图:

代码:

SetEnvIfNoCase Referer"^http://www.guhantai.com.cn" local_ref
SetEnvIfNoCase Referer"www.guhantai.cn" local_ref
SetEnvIfNoCase Referer "^$"local_ref
<filesmatch"\.(txt|doc|mp3|zip|rar|jpg|gif)">
Order Allow,Deny
Allow from env=local_ref
</filesmatch>

然后保存退出

2、检查刚才的配置文件是否有错误

[[email protected] www]# /usr/local/apache2/bin/apachectl -t

Syntax OK

3、重启apache服务

[[email protected] www]# /usr/local/apache2/bin/apachectl restart

4、 测试是否成功

[[email protected] www]# curl -u cheng:123456-e"http://www.baidu.com/2.txt" -x127.0.0.1:80www.guhantai.com.cn/1.jpg -I
HTTP/1.1403 Forbidden
Date:Sat, 13 Jun 2015 22:37:18 GMT
Server:Apache/2.2.16 (Unix) DAV/2 PHP/5.3.28
Content-Type: text/html; charset=iso-8859-1

这个就是模拟的把guhantai.com.cn网站下的1.txt文件挂载到baidu网站下去,然后通过百度网站的链接来访问这个文件,提示不可以访问,说明防盗链接配置成功了,当然,这里只是模拟,可以使用百度或者其他的都可以

九、访问控制

1、把一下代码复制到/usr/local/apache2/conf/extra/httpd-vhosts.conf文件中,需要注意的是要把代码放在防盗链配置文件的后面才可以,不可以写到前面。(实验的最后会有全文的配置文件,一定要按照配置文档的实验顺序才可以,不然可能会出错)

#访问控制

<Directory /data/www/>
<filesmatch ".*">  #匹配所有
     Order deny,allow
     Deny from all
     Allow from 127.0.0.1
</filesmatch>
</Directory>

退出保存

检查配置文件

[[email protected] ~]#/usr/local/apache2/bin/apachectl -t

Syntax OK

重启apache服务

[[email protected] ~]#/usr/local/apache2/bin/apachectl restart

浏览器访问测试成功

在Linux上测试是OK的

[[email protected] www]# curl -u cheng:123456-x127.0.0.1:80 www.guhantai.com.cn/1.jpg -I
HTTP/1.1 200 OK
Date: Sun, 14 Jun 2015 04:33:42 GMT
Server: Apache/2.2.16 (Unix) DAV/2PHP/5.3.28
Last-Modified: Sat, 13 Jun 2015 21:37:54GMT
ETag: "a1548-0-5186d098fe20d"
Accept-Ranges: bytes
Content-Type: image/jpeg

这应用场景一般在针对某个特殊的目录来的可以这样子写

<Directory /data/www/adc> 这个写法就是针对abc这个目录来的

2、针对请求的uri去限制,只允许内网和指定的ip才可以访问包含admin关键词的地址

<filesmatch "(.*)admin(.*)">

Order deny,allow

Deny from all

Allow from 127.0.0.1

Allow from 192.168.21.100

</filesmatch>

这里的两个IP地址的意思就是说,除了这两IP地址之外,其他的IP地址及访问带有admin关键字时会直接禁止

修改完配置文件之后一定要检查配置文件,然后在重启apache服务

3、某个目录下禁止解析php,做这个实验的是时候最好的是吧之前的访问控制和精致访问admin后台的相关的配置禁用掉,以免出错都是在/usr/local/apache2/conf/extra/httpd-vhosts.conf文件中来修改配置的

<Directory /data/www/uc_server>

php_admin_flag engine off

<filesmatch "(.*)php">

Order deny,allow

Deny from all

</filesmatch>

</Directory>

修改完配置文件之后一定要检查配置文件,然后在重启apache服务

测试,在uc_server目下写一个php脚本

>?php

echo 12345678;

?>

不禁止会暴露php源代码

[[email protected] www]# curl -u cheng:123456-x192.168.21.97:80 ‘http://www.guhantai.com.cn/uc_server/2.php‘
>?php
echo 12345678;
?>

禁止后

[[email protected] www]# curl -u cheng:123456-x192.168.21.97:80 ‘http://www.guhantai.com.cn/uc_server/2.php‘
<!DOCTYPE HTML PUBLIC "-//IETF//DTDHTML 2.0//EN">
<html><head>
<title>403 Forbidden</title>
</head><body>
<h1>Forbidden</h1>
<p>You don‘t have permission toaccess /uc_server/2.php
on this server.</p>
</body></html>

这样就无法看到php的源代码

目录使用diectory

<Directory /data/www/ uc_server > :只要是uc_server目录下php全部都禁用掉,这个目录根据实际的需来写

十、配置伪静态规则

Mod_rewite是apache的一个非常强大的功能,它可以实现伪静态

1、  在discuz!管理后台页面—全局—左侧SEO设置—URL伪静态,右边全部打钩,具体如下图所示:

2、  在/usr/local/apache2/conf/extra/httpd-vhosts.conf配置文件中加入以下代码:

#RewriteRule^/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /forum.php?mod=viewthread&tid=$1&extra=page%3D$2
RewriteRule^/topic-(.+)\.html$ /portal.php?mod=topic&topic=$1&%1
RewriteRule^/article-([0-9]+)-([0-9]+)\.html$/portal.php?mod=view&aid=$1&page=$2&%1
RewriteRule^/forum-(\w+)-([0-9]+)\.html$ /forum.php?mod=forumdisplay&fid=$1&page=$2&%1
RewriteRule^/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$/forum.php?mod=viewthread&tid=$1&extra=page\%3D$3&page=$2&%1
RewriteRule^/group-([0-9]+)-([0-9]+)\.html$/forum.php?mod=group&fid=$1&page=$2&%1
RewriteRule^/space-(username|uid)-(.+)\.html$ /home.php?mod=space&$1=$2&%1
RewriteRule^/blog-([0-9]+)-([0-9]+)\.html$/home.php?mod=space&uid=$1&do=blog&id=$2&%1
RewriteRule^/archiver/(fid|tid)-([0-9]+)\.html$/archiver/index.php?action=$1&value=$2&%1
RewriteRule^/([a-z]+[a-z0-9_]*)-([a-z0-9_\-]+)\.html$ /plugin.php?id=$1:$2&%1

如图所示位置:

十二、apache限制指定user_agent,把一下代码拷贝到/usr/local/apache2/conf/extra/httpd-vhosts.conf文件中,紧挨着域名跳转开始

代码如下:

<IFModulemod_rewrite.c>

       RewriteEngine on

       RewriteCond %{HTTP_USER_AGENT}  ^.*MSIE\ 8.0*[NC,OR] 

       RewriteCond %{HTTP_USER_AGENT}  ^.*curl* [NC]

       RewriteRule  .*  -  [F]

</IFModule>

修改完配置文件之后,一定要检查配置文件,然后在重启apache服务

测试:

十三、附件,附时间中的实例配置文件

<VirtualHost *:80>
    DocumentRoot "/tmp/tmp"
    ServerName tmp.com
<Directory /tmp/tmp/>
      Order allow,deny
      Deny from all
</Directory>
</VirtualHost>
<VirtualHost *:80>
    DocumentRoot "/data/www"
    ServerName www.1.com
    ServerAlias www.a.com  www.b.com
    ServerAlias www.c.com
# 用户认证
#    <Directory /data/www>
#       AllowOverride AuthConfig
#       AuthName "alksdjflkasjdf"
#       AuthType Basic
#       AuthUserFile /data/.htpasswd
#       require valid-user
#    </Directory>
# 域名跳转
    <IfModule mod_rewrite.c>
        RewriteEngine on
#        RewriteCond %{HTTP_HOST} ^www.a.com$ [OR]
        RewriteCond %{HTTP_HOST} !^www.1.com$
        RewriteRule ^/(.*)$ http://www.1.com/$1 [R=301,L]
        RewriteRule ^/(.*)\.png$ /static/image/common/fav.gif [R=302]#这个没有多大意义
#伪静态规则
#RewriteRule ^/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /forum.php?mod=viewthread&tid=$1&extra=page%3D$2
RewriteRule ^/topic-(.+)\.html$ /portal.php?mod=topic&topic=$1&%1
RewriteRule ^/article-([0-9]+)-([0-9]+)\.html$ /portal.php?mod=view&aid=$1&page=$2&%1
RewriteRule ^/forum-(\w+)-([0-9]+)\.html$ /forum.php?mod=forumdisplay&fid=$1&page=$2&%1
RewriteRule ^/thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ /forum.php?mod=viewthread&tid=$1&extra=page\%3D$3&page=$2&%1
RewriteRule ^/group-([0-9]+)-([0-9]+)\.html$ /forum.php?mod=group&fid=$1&page=$2&%1
RewriteRule ^/space-(username|uid)-(.+)\.html$ /home.php?mod=space&$1=$2&%1
RewriteRule ^/blog-([0-9]+)-([0-9]+)\.html$ /home.php?mod=space&uid=$1&do=blog&id=$2&%1
RewriteRule ^/archiver/(fid|tid)-([0-9]+)\.html$ /archiver/index.php?action=$1&value=$2&%1
RewriteRule ^/([a-z]+[a-z0-9_]*)-([a-z0-9_\-]+)\.html$ /plugin.php?id=$1:$2&%1
RewriteCond %{HTTP_USER_AGENT}  ^.*Firefox/4.0* [NC,OR]
RewriteCond %{HTTP_USER_AGENT}  ^.*curl* [NC]
RewriteRule  .*  -  [F]
    </IfModule>
# 配置日志
    ErrorLog "/usr/local/apache2/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 "|/usr/local/apache2/bin/rotatelogs -l /usr/local/apache2/logs/1.com-access__%Y%m%d.log 86400" combined env=!image-request
# 配置静态文件缓存
#<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>
<Ifmodule mod_headers.c>
<filesmatch "\.(html|htm|txt)$">
header set cache-control "max-age=3600"
</filesmatch>
<filesmatch "\.(css|js|swf)$">
header set cache-control "max-age=604800"
</filesmatch>
<filesmatch "\.(ico|gif|jpg|jpeg|png|flv|pdf)$">
header set cache-control "max-age=29030400"
</filesmatch>
</ifmodule>
# 配置防盗链
<Directory /data/www/>
SetEnvIfNoCase Referer "^http://www.1.com" local_ref
SetEnvIfNoCase Referer "www.a.com" local_ref
SetEnvIfNoCase Referer "www.b.com" local_ref
SetEnvIfNoCase Referer "^$" local_ref
<filesmatch "\.(txt|doc|mp3|zip|rar|jpg|gif)">
Order Allow,Deny
Allow from env=local_ref
</filesmatch>
</Directory>
# 访问控制
#<Directory /data/www/admin>
#<filesmatch ".*">
#      Order deny,allow
#      Deny from all
#      Allow from 127.0.0.1
#</filesmatch>
#</Directory>
#禁止访问admin.php后台
#<Directory /data/www>
#<Filesmatch  "^admin.php(.*)$"> #匹配文件的时候在做限制
#      Order deny,allow
#      Deny from all
#      Allow from 127.0.0.1
#</Filesmatch>
#</Directory>
#禁止某个目录下禁止解析php
<Directory /data/www/uc_server>
    php_admin_flag engine off
    <filesmatch "(.*)php">
            Order deny,allow
            Deny from all
    </filesmatch>
</Directory>
</VirtualHost>

笔记如果有错误的地方,还请大神们指正出来,当然我也会继续修改

时间: 2024-11-06 12:32:46

LAMP环境下搭建discuz!论坛的相关文章

在LAMP环境下搭建Discuz论坛网站

作为一名Linux菜鸟学员,我在搭建好LAMP环境后,闲来无聊,尝试建站,因此选择Discuz论坛站点.在搭建站点时,首先下载Discuz套件,1.wgethttp://download.comsenz.com/DiscuzX/3.1/Discuz_X3.1_TC_UTF8.zip 2.unzip Discuz_X3.1_TC_UTF8.zip将压缩文件解压,解压后得到一个upload文件. 3.cp -r ./upload /var/www/html 4.service httpd start

LAMP环境下搭建discuz论坛

Discuz!是一套通用的社区论坛软件系统,用户可以在不需要任何编程的基础上,通过简单的设置和安装,在互联网上搭建起具备完善功能.很强负载能力和可高度定制的论坛服务.Discuz! 的基础架构采用世界上最流行的web编程组合PHP+MySQL实现,是一个经过完善设计,适用于各种服务器环境的高效论坛系统解决方案. 1.下载discuz!安装包 创建www目录存放discuz安装文件 [[email protected] src]# mkdir /data/www [[email protected

在lamp架构下搭建discuz论坛

成功在虚拟机中建立一个discuz论坛需要多个软件支持的,主要包括apache.MySQL.PHP.这几个软件的安装在我以前的文章中有过介绍,可以到我之前的文章中去了解 编译安装apache 编译安装MySQL数据库 编译安装PHP 搭建前准备 一台Linux虚拟机(Red Hat Enterprise 6.5) 安装好apache.MySQL.PHP等支持软件 准备discuz软件包 开始搭建论坛 进入MySQL数据库,创建名为BBS的数据库 CREATE DATABASE bbs; 把bbs

在LAMP平台中搭建Discuz!论坛

在LAMP平台中搭建Discuz!论坛  准备工作 操作系统:linux Redhat6.5 相关软件包:链接:https://pan.baidu.com/s/1epkmsK9S9FQpO7jKJwsvrQ 密码:fmhr Discuz!论坛安装步骤 1. 输入mysql命令进入mysql数据库并进行创建 mysql mysql>CREATE DATABASE bbs;    #创建一个数据库 mysql>GRANT all ON bbs.* TO 'bbsuser'@'%' IDENTIFI

LAMP+DNS+NFS搭建discuz论坛项目

一.项目目的 两台web服务器,共享关系型数据库,共享NFS服务器,利用DNS记录轮询提供负载均衡: 搭建论坛www.wuhf.com 二.项目设计 DNSServer,DBServer,NFSServer,WebServer1:WebServer2:搭建5个虚拟机 域名wuhf.com,通过本地DNS解析到内网两台web服务器,实现轮询负载均衡: 在两台web服务器上搭建discuz论坛: 使用MariaDB存放结构化数据 使用NFS服务器存放非结构化数据 三.项目计划 1.网络架构实现 主机

lamp 环境下搭建 个人博客

lamp环境下 1.下载discuz  包 2.解压后将 upload 拷贝到 /usr/local/appache2/htdocs 下 chmod -R 777 upload/ 3.新建数据库  mysql create database discuz; 4.建用户 create user discuz identified by 'sn123456'; 5.赋权 grant all on discuz.* to discuz; 用discuz用户登录数据库 6.安装discuz http:/

lamp环境下搭建自己的私有云

lamp环境已搭建完成基础之上 上传owncloud-10.0.3.zip到Linux 解压owncloud-10.0.3.zip [[email protected] ~]#unzip owncloud-10.0.3.zip 复制解压后的文件到/var/www/html [[email protected] ~]# cp -r owncloud /var/www/html/ 修改权限 chown -R apache:apache /var/www/html/owncloud chmod 777

RHEL7搭建LAMP环境并安装Discuz论坛

一.安装httpd [[email protected] ~]# yum install httpd Loaded plugins: product-id, search-disabled-repos Resolving Dependencies --> Running transaction check ---> Package httpd.x86_64 0:2.4.6-40.el7 will be installed --> Processing Dependency: httpd-

LNMP下搭建discuz论坛---实战讲解

1.LNMP 是一个缩写,它指一组通常一起使用来运行动态网站或者服务器的自由软件:Linux+Nginx+MySQL+php( php-fpm),由于 Nginx 有大并发的优势,现在越来越多的企业 LAMP 平台都在向 LNMP 迁移.接着我们开始进入 LNMP 搭建.现实生产环境下, 不同的业务需求都不相同,因此更多的企业会考虑使用源码搭建 LNMP 环境,这样可以更加灵活使用各个功能参数将性能调制到最佳状态.当然如果贵公司的环境比较简单, 可以考虑 rpm 包安装.注意:本实验环境基本上都