discuz.htaccess规则
时间 : 2023-12-09 19:51:02 声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性

最佳答案

Discuz是一种流行的论坛软件,可以在网站上搭建和管理社区。在Discuz的安装目录下,有一个名为".htaccess"的文件,它是用来配置网站的Apache服务器的规则文件。通过编写.htaccess规则,可以实现URL重写、重定向、密码保护等功能。

下面是一些常用的Discuz.htaccess规则:

1. 实现URL重写:

RewriteEngine On

RewriteRule ^forum-([0-9]+)\.html$ forumdisplay.php?fid=$1 [L]

RewriteRule ^thread-([0-9]+)-([0-9]+)-([0-9]+)\.html$ viewthread.php?tid=$1&page=$2&authorid=$3 [L]

这些规则将把/forum-1.html重写为/forumdisplay.php?fid=1,并将/thread-1-1-1.html重写为/viewthread.php?tid=1&page=1&authorid=1。

2. 防止站点被盗链:

RewriteEngine On

RewriteCond %{HTTP_REFERER} !^$

RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?example\.com [NC]

RewriteRule \.(jpg|jpeg|png|gif)$ - [NC,F,L]

这些规则将仅允许example.com域名下的网页引用站点上的图片文件,其他网站引用将被禁止。

3. 强制网站使用HTTPS协议:

RewriteEngine On

RewriteCond %{HTTPS} off

RewriteRule ^(.*)$ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]

这个规则将会将所有HTTP请求重定向到HTTPS协议上,确保网站使用安全的加密连接。

4. 保护.htaccess文件:

<Files ".htaccess">

Order Allow,Deny

Deny from all

</Files>

这个规则将阻止直接访问.htaccess文件,增加网站的安全性。

需要注意的是,修改.htaccess文件前请备份原有的文件,防止出现问题时可以恢复。另外,.htaccess规则在不同的服务器环境下可能会有所不同,需要根据具体环境进行调整。如果不确定如何配置.htaccess文件,建议咨询专业人士或Discuz官方支持。

其他答案

Discuz是一款流行的开源论坛软件,它提供了许多有用的功能和插件。在使用Discuz建立论坛网站时,你可能需要设置一些.htaccess规则来优化网站的性能和安全性。下面是一些常见的.htaccess规则示例:

1. 重定向规则

如果你更改了论坛的URL结构,或者想要将旧的URL重定向到新的URL,你可以使用.htaccess文件中的重定向规则。例如,你可能想将旧的帖子URL "/forum/viewtopic.php?id=123" 重定向到新的URL "/thread-123-1-1.html"。你可以使用以下规则实现:

RewriteEngine On

RewriteCond %{QUERY_STRING} ^id=(\d+)$

RewriteRule ^forum/viewtopic\.php$ /thread-%1-1-1.html? [R=301,L]

2. 防止直接访问某些文件或目录

有些文件或目录应该是私有的,不应该被外部访问。你可以使用.htaccess文件来禁止对这些文件或目录进行直接访问。例如,你想禁止用户直接访问"/data"目录和"/config.inc.php"文件,你可以使用以下规则:

deny from all

3. 开启压缩

开启文件压缩可以减小文件的大小,加快网站的加载速度。你可以使用以下规则开启GZIP压缩:

<ifmodule mod_deflate.c>

AddOutputFilterByType DEFLATE text/plain

AddOutputFilterByType DEFLATE text/html

AddOutputFilterByType DEFLATE text/xml

AddOutputFilterByType DEFLATE text/css

AddOutputFilterByType DEFLATE application/xml

AddOutputFilterByType DEFLATE application/xhtml+xml

AddOutputFilterByType DEFLATE application/rss+xml

AddOutputFilterByType DEFLATE application/javascript

AddOutputFilterByType DEFLATE application/x-javascript

</ifmodule>

4. 防止文件被盗链

你可以使用.htaccess文件来防止其他网站在未经许可的情况下直接引用你的图片和其他文件。以下是一个例子:

<ifmodule mod_rewrite.c>

RewriteEngine On

RewriteCond %{HTTP_REFERER} !^$

RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourwebsite\.com/ [NC]

RewriteCond %{HTTP_REFERER} !^http://(www\.)?yourwebsite\.net/ [NC]

RewriteRule \.(jpg|jpeg|png|gif)$ - [NC,F]

</ifmodule>

这段代码将阻止除了你的网站之外的其他网站引用你的图片文件。

以上是一些常见的Discuz.htaccess规则示例。请注意,在使用.htaccess文件时要小心,确保你了解每条规则的含义和影响。同时,建议在修改.htaccess文件之前备份原始文件,以防止意外的错误和损失。

上一篇
discuz3.2 php7

下一篇
django 和 wordpress