mod-rewrite 相关问题

Apache Web服务器的URL重写模块。它通常用于所谓的“漂亮”URL,但也提供了执行除简单替换之外的各种请求处理任务的能力和灵活性。

.htaccess 尝试创建干净的 URL mod_rewrite

我已经阅读了之前的SO问题并阅读了教程,但我不完全理解mod_rewrite,所以我在这里发帖 选项+FollowSymLinks 重写引擎开启 #使用 THE_REQUEST 来捕获引用...

回答 1 投票 0

我应该在 .htaccess 中使用反斜杠转义这些字符吗?

我的 .htaccess 中有这个: RewriteRule ^(aa.bbb|aaa,bbb|aaa-bbb|aaa_bbb||)/(.*)$ /index.html [L,NC] 如上所述可以吗,还是应该有转义字符?我知道 javascript 经常使用 \ 来

回答 1 投票 0

阻止 htaccess 中的特定正则表达式

有没有办法阻止具有特定查询字符串的所有请求? GET /?7eyS=cUYD HTTP/2 GET /?8dkG=TMWZ HTTP/2 GET /?viYF=4KbU HTTP/2 GET /?Wv3y=oCSA HTTP/2

回答 1 投票 0

如何在 Linux 服务器中使 URL 不区分大小写

我正在开发一个部署在Linux服务器上的网站。我对此需要做一些小的改变。我已读取文件夹。要求是,如果我输入 URL localhost:80/tom/Read 或 ../READ 或 /r...

回答 4 投票 0

如何仅允许访问特定 URL 并使用 Apache .htaccess 重写它们?

我正在使用 Apache 并希望使用 .htaccess 来实现以下目标: 重写 /api/get 为 get.php 将/api/report重写为report.php 只允许访问这些 URL/脚本 本质上,我...

回答 1 投票 0

使用带有 L 标志的 .htaccess RewriteRule,$_GET 始终为空

我的 laravel 应用程序在本地主机上运行良好,但现在将我的应用程序移动到生产服务器,它不再识别通过 URL 传递的任何 $_GET 变量。我的作品

回答 3 投票 0

$_GET 始终为空

我的 laravel 应用程序在本地主机上运行良好,但现在将我的应用程序移动到生产服务器,它不再识别通过 URL 传递的任何 $_GET 变量。我的作品

回答 3 投票 0

.htaccess 301 通配符自动重写规则重写规则

有人可以帮我做一个1行重写规则,这样我就不必对文章网址进行1行1行重写吗 旧网址示例: olddomain.com/article/12/name-of-the-old-page.html 我只是想...

回答 1 投票 0

Mod 重写可选参数

我有一套相当复杂的重写规则,可以为我的网站页面提供漂亮的 URL。现在为了处理搜索结果分页,我使用 2 个重写规则: RewriteRule ^search/([0-9]+)$ /cgi-bin/sea...

回答 2 投票 0

添加尾部斜杠时,Laravel 在 URL 中恢复为 /public/

这是我的根目录中的 .htaccess ,应该从 URL 中删除“public”: 重写引擎开启 RewriteRule ^(.*)$ 公共/$1 [L] 这是我的根目录中的 .htaccess,应该从 URL 中删除“public”: <IfModule mod_rewrite.c> RewriteEngine On RewriteRule ^(.*)$ public/$1 [L] </IfModule> 这是我在公共目录中的.htaccess,应该去掉尾部斜杠: <IfModule mod_rewrite.c> # Redirect Trailing Slashes If Not A Folder... RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} (.+)/$ RewriteRule ^ %1 [L,R=301] </IfModule> 这一切都很好,除了当我输入带有尾部斜杠的 URL 时,它会重定向回不带尾部斜杠的 URL,而且还添加了 /public。 例如我们有这条路线: Route::get('/de', 'HomeController@index')->name('home'); 通常,URL 看起来像domain.com/de。 但是,如果我在浏览器中输入 domain.com/de/,它会重定向到 domain.com/public/de 而不是 domain.com/de - 并且页面会正常加载。 我该如何解决这个问题? 您的网站根目录.htaccess应该是这样的: RewriteEngine On # remove trailing slash RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_URI} (.+)/$ RewriteRule ^ %1 [L,R=301,NE] # route all requests to public/ RewriteRule ^(.*)$ public/$1 [L] 然后里面public/.htaccess有这个代码: RewriteEngine On # if /public/ is part of original URL then remove it RewriteCond %{THE_REQUEST} /public/(\S*) [NC] RewriteRule ^ /%1 [L,NE,R=301] # Handle Front Controller... RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^ index.php [L] 在测试此更改之前,请确保完全清除浏览器缓存。 Apache/Nginx 应该指向 public 目录而不是 项目根目录。 这样您就不需要添加任何 .htaccess 规则来删除 URL 中的“public”字符串

回答 2 投票 0

仅允许从特定引用者访问页面

包括尝试的解决方案、为什么它们不起作用以及预期的结果。 你好呀。我想在我的网站上创建某个页面,例如。仅当您单击链接时才能访问 site.com/content/B.html...

回答 2 投票 0

htaccess重写规则401

我已将其插入到 WordPress 安装的 htaccess 文件中 RewriteRule wp-content/plugins/(.*\.php)$ - [R=404,L] 我正在使用 LSCWP,我想尝试访客模式。 为此,我需要访问

回答 1 投票 0

如何获取 URL 中的值并修改它以使用 mod-rewrite 进行分页?

我正在尝试让我的旧分页类工作,它依赖于 PHP 中 $_GET 可用的变量来重建分页链接的 URL,它工作得很好,但现在我正在更改为“...

回答 1 投票 0

.htaccess 虚拟目录作为 $_GET 参数

在使用多个数据库时,我有一个数据库 ID 存储在 $_SESSION 中,我想在 url 中传递该 ID,如下所示: 现在:my.domain.app/hrm/employees 新:my.domain.app/

回答 1 投票 0

使用 url 重写时如何消除 php 中的内部服务器错误

我想重写 我的网址: http://www.example.com/mypage.php?unm=hr 重写后: http://www.example.com/hr .htaccess 文件: 重写引擎开启 RewriteRule ^([^/]*)$ /myuser.php?url=$1 [L] 但是...

回答 3 投票 0

我调用子文件夹中的PHP文件,但.htaccess使用了奇怪的重写

在根目录中我有文件:.htaccess 和 page.php 在 /test/ 子文件夹中我有文件:define_session.php 和 write_session.php .htaccess: 重写引擎开启 重写库 / RewriteCond %{REQUEST_FILE...

回答 1 投票 0

最佳实践:301 将 HTTP 重定向到 HTTPS(标准域)

我一直在寻找完美的 301 重定向。但我找到了很多解决方案,但不知道什么是最好的。 这就是我想做的 http://domain.tld/ → https://domain.tld/ http://www.d...

回答 4 投票 0

如何显示单个页面的 503 错误

我想在我的网站上的某个页面上显示 503 错误。 (使用 htacess)到目前为止,我已经尝试了以下方法,但似乎不起作用。 重写引擎开启 重写库 / RewriteCond %{REQUEST_FILENAME} !-f

回答 1 投票 0

如何使用 .htaccess 显示网站上特定 URL 的 503 错误

我想在我网站的特定 URL 上显示 503 错误。这应该只适用于该特定 URL,其他页面应该可以正常加载。到目前为止,我已经尝试过以下方法,但没有成功。任何帮助都是

回答 2 投票 0

.htacess 无法从特定 URL 中删除 www

我有以下 .htacess 文件: 重写引擎开启 重写库 / # 从 URL 中删除“www” RewriteCond %{HTTP_HOST} ^www\.(.*)$ [NC] 重写规则 ^(.*)$ https://%1/$1 [R=301,L] # 重定向请求...

回答 1 投票 0

最新问题
© www.soinside.com 2019 - 2025. All rights reserved.