.htaccess 相关问题

Apache Web服务器使用的目录级配置文件。当且仅当.htaccess内容直接涉及主题时,才使用此标记。我们知道很多人都在使用.htaccess,但请社区成员不要使用此标记,除非您知道它在您的问题中是主题。

防止通过htaccess链接直接显示内容

我的内容在某些条件下可以在我的网站页面上使用,具体如下: 我的内容在我的网站页面上的某些条件下可用,如下: <video oncontextmenu="return false;" controlsList="nodownload noplaybackrate" disablepictureinpicture src="../videos/vid1.mp4" controls></video> 和 RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?example\.com [NC] RewriteRule \.(jpg|jpeg|png|gif|mp3|wav|mp4|webm|ogg)$ - [NC,F] 但是文件是可以通过链接直接获得的,以上条件都没用: https://example.com/dir/videos/vid1.mp4 是否可以通过与.htaccess的链接来阻止内容直接显示,我对.htaccess的规则不太了解,非常感谢您的帮助。 RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?example\.com [NC] RewriteRule \.(jpg|jpeg|png|gif|mp3|wav|mp4|webm|ogg)$ - [NC,F] 但是该文件可以通过链接直接获得 要在用户直接请求 URL 时阻止“直接”访问(例如,在浏览器中键入 URL),您只需删除第一个检查 empty RewriteCond 的 condition(Referer 指令)即可标头。 (直接请求URL时没有referrer)。 但是,出于“隐私”的考虑,某些用户选择在所有请求中隐藏 Referer 标头(现代浏览器中的一项功能),因此您也会阻止这些用户,即使他们可能正在通过请求资源您网站上的嵌入链接。没有办法解决这个问题,所以通常您需要允许一个空的Referer标题(正如您当前所做的那样)。

回答 1 投票 0

htaccess 的热链接保护

如何防止我的网站内容在其外部显示。 我的网站 : 如何防止我的网站内容显示在其外部。 我的网站: <video oncontextmenu="return false;" controlsList="nodownload noplaybackrate" disablepictureinpicture src="../videos/vid1.mp4" controls></video> 其他网站: <video src="https://mywebsite.com/dir/videos/vid1.mp4" controls></video> 我无法使用下面的代码: RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http://(www\.)?mywebsite.com/.*$ [NC] RewriteRule \.(jpg|jpeg|png|gif|mp3|wav|mp4|webm|ogg)$ - [F] 我希望内容显示在我网站的每个目录中: <video oncontextmenu="return false;" controlsList="nodownload noplaybackrate" disablepictureinpicture src="videos/vid1.mp4" controls></video> <video oncontextmenu="return false;" controlsList="nodownload noplaybackrate" disablepictureinpicture src="../videos/vid1.mp4" controls></video> 我很感激任何帮助。 我的问题在@MrWhite的指导下得到了解决,我通过搜索找到了以下链接(来自MrWhite,非常感谢您的活动): 防止热链接和 .htaccess通过 .HTACCESS 进行奇怪的热链接保护 对我来说,以下代码都有效: 代码1: RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http://(www\.)?domain.com/.*$ [NC] RewriteCond %{HTTP_REFERER} !^https://(www\.)?domain.com/.*$ [NC] RewriteRule \.(jpg|jpeg|png|gif|mp3|wav|mp4|webm|ogg)$ - [F] 代码2: RewriteEngine on RewriteCond %{HTTP_REFERER} !^$ RewriteCond %{HTTP_REFERER} !^http(s)?://(www\.)?domain\.com [NC] RewriteRule \.(jpg|jpeg|png|gif|mp3|wav|mp4|webm|ogg)$ - [NC,F] 1 - 但我不明白它们之间的区别(我知道涉及https): 代码1:.com/.*$ 代码2:\.com 2 - 这两个代码哪个更好? 我不太了解.htaccess的规则

回答 1 投票 0

图像/avif 的 ExpiresByType 指令不起作用

我的 .htaccess 文件中有以下内容: 过期有效日期 过期默认“访问权限加 1 周” ExpiresByType font/woff “访问加 1 年”

回答 1 投票 0

.htaccess & web.py,在 SetHandler fcgid-script

我在根目录中有以下 .htaccess 以启动 web.py 应用程序: 允许所有人 SetHandler fcgid 脚本 选项+ExecCGI 重写引擎开启 RewriteCond %{REQUEST_FILENAME} !-f 重写规则 ^(....

回答 2 投票 0

修改两个站点的htaccess文件

我的网络主机将我的“主”域名指向根 www 文件夹。该站点的 Web 文件位于“www/app/webroot”文件夹中。我目前使用以下命令启动并运行了该网站...

回答 4 投票 0

如何拥有同名的文件和目录

我有一个托管在 Apache Web 服务器上的网站,并且我有一些与某些目录具有相同名称(不带扩展名)的文件。 我还在 .htaccess 中删除了扩展名...

回答 2 投票 0

尝试使用 .htaccess 从 URL 中删除 /web 时找不到 yii2 404 页面

我正在尝试使用 .htaccess 文件从 Yii2 基本模板中的 URL 中删除此 /web 。我已经找到了解决方案,但出现了问题! 所以我之前找到的解决方案是: ...

回答 1 投票 0

调试 .htaccess 的流行技术

我是一名自学成才的程序员,我喜欢通过回显可疑变量并注释掉代码来进行调试。 最近,我必须了解有关 .htaccess 文件的更多信息。我需要它来做诸如口译之类的事情...

回答 2 投票 0

使用 htaccess 在显示基本 url 时向 url 添加子目录

我已经搜索了很多变体,但似乎找不到我需要的东西。我需要向 URL 添加目录,但显示基本 URL 的内容。 例如mydomain.com/目录以显示...

回答 1 投票 0

htaccess 拒绝特定基本路径/目录的请求

我的 WordPress 函数文件中包含了这个 PHP 代码,它可以工作,但我想将逻辑移到 WP 之外,并在加载 WordPress 之前将其拒绝(htaccess) 我们是

回答 1 投票 0

尝试使用 ErrorDocument 处理请求时遇到 500 Internal Server Error 错误

我刚刚将我的 WordPress 网站从一台托管服务器转移到另一家公司的另一台托管服务器上。迁移后,我收到错误“在

回答 3 投票 0

如何在 .htaccess 重写规则中忽略正则表达式映射中的大小写?

我现在拥有的是以下内容: RewriteRule ^([^/]+)/*$ x/$1.html [L,NC,END] 这将指出: /abcd 到 x/abcd.html /ABCD 到 x/ABCD.html 这在 Unix 文件系统上不太好,我...

回答 1 投票 0

.htaccess 文件中针对 IP 地址的特殊访问规则,仅授权一种目录结构

我使用 WordPress 已经很多年了,但是我想存储在 .htaccess 中的访问规则有一个微妙的问题。我实际上使用的是 Apache 2.4.56。 初始情况1:网络服务...

回答 1 投票 0

检查 REQUEST_URI 中是否有 /nl/ 或 /en/ 来更改我的重写规则

我有自己的 CMS 系统,其中包含多语言网站的设置,并将其保存在我的数据库中。但我无法在 htacces 中检查该变量,因此我想检查我的请求网址,如下所示: CMS20...

回答 1 投票 0

如何在正则表达式映射中忽略大小写?

我现在拥有的是以下内容: RewriteRule ^([^/]+)/*$ x/$1.html [L,NC,END] 这将指出: /abcd 到 x/abcd.html /ABCD 到 x/ABCD.html 这在 Unix 文件系统上不太好,我...

回答 1 投票 0

对文件夹进行 POST 会被接收为 GET

我正在 php 中制作一个 api,而不使用框架,当我使用邮递员将 POST 发送到文件夹时,index.php 上的 $_SERVER['REQUEST_METHOD'] 是一个 GET。 我的文件夹组织示例: 📂API ┗📂

回答 1 投票 0

阻止直接访问.php文件,减去index.php文件和ajax.php文件

一直在寻求你的帮助,我找到了一个方法,但它并不如我所愿。如果有人可以帮助我。 我想要的是没有人可以直接输入 .php 的 URL 例如,当我输入我的domain.com/buy/pro...

回答 2 投票 0

基于Accept-Language的重定向

我需要尊重网络浏览器的语言首选项列表。支持的语言为英语和法语。例如:http_accept_language="jp-JP;fr;en-US;en" 重定向到名为 /Fr... 的目录

回答 2 投票 0

缺少标头安全报告.htaccess

我正在尝试调整安全标头。服务器是阿帕奇。该网站基于 wordpress。我已经修改了这个文件十次,我已经将它上传到服务器十次了,但我仍然......

回答 1 投票 0

创建 React App Build 后的空白页面放置在服务器上

前注:以下帖子中的解决方案对我不起作用: 在 create-react-app 上运行构建后出现空白页面 就我而言,App.js 主要功能: 函数应用程序(){ 返回 ( 上一篇注释:以下帖子中的解决方案对我不起作用: 在 create-react-app 上运行构建后出现空白页面 就我而言,App.js 主要功能: function App() { return ( <div className='App'> <Routes> <Route index path='/' element={<Login />} /> <Route path='/home' element={<ProtectedRoute children={Home} />} /> </Routes> </div> ) } 和index.js: root.render( <div className="flex justify-center bg-black overscroll-contain"> <div className="w-full max-w-[70rem]"> <Auth0Provider domain={domain} clientId={clientId} authorizationParams={{ redirect_uri: window.location.origin, }}> <BrowserRouter> <App /> </BrowserRouter> </Auth0Provider> </div> </div> ); 构建被放置在子目录中。我使用与此类似的网址访问它:https://test.myweb.com/MyApp。 我已经尝试了 package.json 上的建议配置:"homepage": "."和"homepage": "https://test.myweb.com/MyApp",但没有一个对我有用。同时,我一直在尝试制作一个工作的.htaccess,如下所示,但没有成功: RewriteEngine on #for app in subdirectory RewriteBase /test/testingProjects/MyApp Header set Cache-Control "no-cache" RewriteRule ^index\.html$ - [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-l RewriteRule ^.*/test/testingProjects/MyApp.* /test/testingProjects/MyApp/index.html [L] #for root app RewriteBase / Header set Cache-Control "no-cache" RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-l RewriteRule . /index.html [L] # DISABLE CACHING <IfModule mod_headers.c> Header set Cache-Control "no-cache, no-store, must-revalidate" Header set Pragma "no-cache" Header set Expires 0 </IfModule> <FilesMatch "\.(html|js)$"> <IfModule mod_expires.c> ExpiresActive Off </IfModule> <IfModule mod_headers.c> FileETag None Header unset ETag Header unset Pragma Header unset Cache-Control Header unset Last-Modified Header set Pragma "no-cache" Header set Cache-Control "max-age=0, no-cache, no-store, must-revalidate" Header set Expires "Thu, 1 Jan 1970 00:00:00 GMT" </IfModule> </FilesMatch> 此时,我有不同的设置来检查,但我不确定如何设置或设置什么: BrowserRouter正确使用。 package.json 上的属性'homepage' .htaccess 文件。 值得一提的是,登录是使用 Auth0 构建的,以防这种情况需要特殊配置。 构建被放置在子目录中。我使用访问它 与此类似的网址:"https://test.myweb.com/MyApp". React-Router-DOM 路由器组件假设它在 "/" 处渲染,并将所有路由和链接视为相对于 this 路径。如果您从子目录托管应用程序,那么您需要通过 basename 属性告诉路由器此信息。 basename 将您的应用程序配置为在特定基本名称下运行 网址 如果您从服务器上的 "/MyApp" 子目录部署/托管应用程序,请将其作为路由器的 basename 属性传递。 root.render( <div className="flex justify-center bg-black overscroll-contain"> <div className="w-full max-w-[70rem]"> <Auth0Provider domain={domain} clientId={clientId} authorizationParams={{ redirect_uri: window.location.origin, }}> <BrowserRouter basename="/MyApp"> <App /> </BrowserRouter> </Auth0Provider> </div> </div> ); function App() { return ( <div className='App'> <Routes> <Route path='/' // <-- renders as "/MyApp/" element={<Login />} /> <Route path='/home' // <-- renders at "/MyApp/home" element={<ProtectedRoute children={Home} />} /> </Routes> </div> ); }

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.