当前位置:论坛首页 > Linux面板 > 求助

请教关于配置 Apache Rewrite规则后,页面图片等资源不显示...

发表在 Linux面板2021-12-9 04:35 [复制链接] 0 1450

大家好:

我的服务器中部署的web服务器套件是 apache2.4+php5.6,我在 .haccess 规则配置文件中配置了如下配置内容

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_URI} !^.*(/.css|/.js|/.gif|/.png|/.jpg|/.jpeg)$
    RewriteRule ^(share|share(/.*))$  /mod/share$2 [L]
    RewriteRule ^([A-Za-z0-9]{3,}\$)$  /mod/share/forward.php?sid=$1 [L,R=302]
</IfModule>

---------

以上红色部分 RewriteRule ^(share|share(/.*))$  /mod/share$2 [L] 配置项的用意是将在 url  中以 share 开头的虚拟路径映射到真实路径 /mod/share。如 http://abc.com/share 映射到 http://abc.com/mod/share,将 http://abc.com/share/?v=f1 映射到 http://abc.com/mod/share/index.php?v=f1。

配置该 rewrite 规则后,/mod/share/index.php 页面能打开进入,但页面的图片不显示和一些js文件报却找不到了,这些资源文件使用的都是相对路径的。删除以上红色 rewrite 配置规则或加入 [R=302] 跳转是正常的,图片和资源文件都能正常显示和找到。

请问:

1、是否是我以上的 rewrite 配置规则有问题呢?

2、应如何配置该 rewrite 映射虚拟路径的规则,但页面图片及各资源文件都能正常显示和找到呢?

待复,衷心感谢


使用道具 举报 只看该作者 回复
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

普通问题处理

论坛响应时间:72小时

问题处理方式:排队(仅解答)

工作时间:白班:9:00 - 18:00

紧急运维服务

响应时间:3分钟

问题处理方式:宝塔专家1对1服务

工作时间:工作日:9:00 - 18:30

宝塔专业团队为您解决服务器疑难问题

点击联系技术免费分析

工作时间:09:00至18:30

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