Mod rewrite mod重写所有url';s除了包括(js/css/img/some-php)

Mod rewrite mod重写所有url';s除了包括(js/css/img/some-php),mod-rewrite,url-rewriting,Mod Rewrite,Url Rewriting,我想要的是Wordpress类型的URL重写 我现在得到的是: .htaccess RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ rewrite.php?data=$1 [L,QSA] 这几乎可以重写除现有文件(css、js等文件未按预期重写)之外的所有文件 我在这方面遇到的问题是: .css、.js、图像和PHP文件也可以通过输入文件名进行访问。例如:domain.com/style.css任何

我想要的是Wordpress类型的URL重写

我现在得到的是:

.htaccess

RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteRule ^(.*)$ rewrite.php?data=$1 [L,QSA]
这几乎可以重写除现有文件(css、js等文件未按预期重写)之外的所有文件

我在这方面遇到的问题是:

  • .css
    .js
    、图像和PHP文件也可以通过输入文件名进行访问。例如:
    domain.com/style.css
    任何人都可以访问

  • 我希望一些现有的文件(只有php现在)被重定向无论如何。例如:domain.com/movies.php应重定向到rewrite.php(包括404.php),domain.com/movies或domain.com/movies/将包括movies.php页面

  • 理想情况下,我还能够将用户输入的URL从
    domain.com/movies
    更改为
    domain.com/movies/
    ,以确保一致性

    我想把
    .htaccess
    控制在最低限度。wordpress是否重写了所有内容,包括
    .css
    文件

    我想要的是:

  • 有些php文件无法重定向其他文件。例如:includes/func.inc.php 用户不应该访问,而movies.php应该是 可访问,但只能从此url domain.com/movies访问/
  • (非必需)

  • 将url更改为规范url,例如:domain.com/movies更改为
    domain.com/movies/(关于如何实现这一点的一些资源将是
    很好)。注意:domain.com/movies url仍应可用,但会与一起出现 结尾的斜杠可以通过重写,也可以通过添加 使用javasript斜杠(更快?)

  • 使用户无法访问.css/.js文件。例如:domain.com/style.css应该将用户重定向到404页面


  • 您现在的规则不应该重写css/javascript文件的URL,因为您有一个
    -f
    在您的重写状态下。你发现它有什么作用吗?不,没有,我想要的是通过url使这些文件不可访问(不是必需的),并重定向一些php文件/页面,但不重定向内部文件或其他几个php文件。@EricPetroleje:在处理问题的格式时,我问自己的问题与此完全相同。另外:您可以检查内容是否也不是目录和链接(Wordpress IIRC遗漏了后者),最后的斜杠称为规范URL/目录,您可以在Apache文档中了解到这一点,有不同的方法/设置/指令来处理这一点,所以这不能在“重写”模块中完成。@DominicM:你的评论并没有让我更清楚。你能详细说明一下你想要用
    .css
    文件做什么吗?当你写重定向是什么意思?URL重写或与浏览器通信的技术HTTP重定向告诉用户去哪里?好的,我想让css/js和php包含的内容在用户访问时重定向到404页面(这不是必需的)。至于movies.php,我希望它只能通过domain.com/movies/访问。我所说的重定向是指URL重写。