Questions tagged «.htaccess»

目录级配置文件主要在Apache Web服务器上找到

4
如何使Apache2重定向到子目录
我在具有多个虚拟主机的Debian etch上运行apache2。 我想重定向,以便http://git.example.com转到http://git.example.com/git/ 应该真的很简单,但是Google并没有削减它。我已经尝试了重定向和重写的东西,他们似乎并没有按照我的意愿做...


2
如何获取Apache2来解析(无错误).htaccess中的标头指令?
由于我相信未配置Apache的指令,我正在加载页面时出现500个内部服务器错误。 我将AllowOverride设置为all,并设置了.htaccess文件,包括: <FilesMatch "\.(eot|ico|pdf|flv|jpg|jpeg|png|gif|svg|swf|ttf|woff)$"> Header set Cache-Control "max-age=31536000, public" Header set Expires "Wed, 23 Apr 2014 17:00:01 UTC" </FilesMatch> /var/log/apache2/error.log具有: [Sat Jul 20 15:12:36 2013] [alert] [client 24.15.83.241] /home/jonathan/.htaccess: Invalid command 'Header', perhaps misspelled or defined by a module not included in the server configuration 我需要指定什么以便Apache2能够正确处理“ Header”指令?

1
Nginx配置文件的名称和位置(等同于htaccess)是什么?
关于如何编写Nginx重写规则以模仿Apache的.htaccess文件的教程很多,但我不能自信地说我知道这个所谓的Nginx配置文件的名称或位置实际上是什么。我专门在寻找Nginx配置文件,该文件可让您编写服务器路径和PHP指令。我使用Ubuntu 12 Linux和Codeigniter作为我的PHP框架。 到目前为止,这是我所知道的: 此文件:/etc/nginx/nginx.conf尽管名称很诱人,但显然不是服务器指令的位置。 这个文件:/etc/nginx/sites-available/default似乎是我所需要的(我能够生成特定于我的应用程序的php错误),但是我无法正确获取Codeigniter特定的路径路由。首先,这是每个人都在谈论的“ config”文件/.htaccess吗?

4
即使VirtualHost具有“ AllowOverride All”,也将忽略.htaccess
我在Fedora 13上运行的LAMP服务器运行正常;但是,我只是将“ .htaccess”文件添加到当前站点的docroot文件夹中,而该文件被完全忽略了。 我尝试了六种不同的测试,其中包括: RewriteEngine on RewriteBase / RewriteRule ^.*$ index.php 但是图像和所有其他页面都可以正常加载,并且不存在的文件仍然是404。我还尝试了以下操作: order deny,allow deny from all 但是每个页面仍然可以正常加载。同样,.htaccess文件只是100%被忽略。 我们将虚拟主机记录放在/etc/httpd/conf.d/virtual.conf中。看起来像这样: NameVirtualHost * <VirtualHost *> ServerName intranet DocumentRoot /var/www/default <Directory "/var/www/default"> Options FollowSymLinks AllowOverride All Order allow,deny Allow from all </Directory> </VirtualHost> <VirtualHost *> ServerName ourwebsite.com DocumentRoot /var/www/html/ourwebsite.com/docroot <Directory "/var/www/html/ourwebsite.com/docroot"> Options FollowSymLinks …


3
.htaccess可疑文件
此问题已从堆栈溢出迁移,因为可以在服务器故障时回答。 迁移 10年前。 这已上传到我的FTP文件夹之一。我不熟悉Apache,但仍然好奇-有人可以告诉我该文件试图提交哪种类型的卑鄙行为?谢谢! RewriteEngine On RewriteCond %{HTTP_REFERER} .*google.*$ [NC,OR] RewriteCond %{HTTP_REFERER} .*ask.*$ [NC,OR] RewriteCond %{HTTP_REFERER} .*yahoo.*$ [NC,OR] RewriteCond %{HTTP_REFERER} .*excite.*$ [NC,OR] RewriteCond %{HTTP_REFERER} .*altavista.*$ [NC,OR] RewriteCond %{HTTP_REFERER} .*msn.*$ [NC,OR] RewriteCond %{HTTP_REFERER} .*netscape.*$ [NC,OR] RewriteCond %{HTTP_REFERER} .*aol.*$ [NC,OR] RewriteCond %{HTTP_REFERER} .*hotbot.*$ [NC,OR] RewriteCond %{HTTP_REFERER} .*goto.*$ [NC,OR] RewriteCond %{HTTP_REFERER} .*infoseek.*$ [NC,OR] …

2
我应该如何在.htaccess中使用<If>指令?
我试图在我的.htaccess文件中使用Apache的If指令添加条件语句。 我已经引用了该页面http://httpd.apache.org/docs/trunk/mod/core.html#if,但是它并没有详细说明/给出了很多示例。它给出了两个不完整的示例: &lt;如果%{REQUEST_METHOD}在GET,HEAD和OPTIONS中&gt; 和 &lt;如果“ $ req {Host} =''”&gt; 因此,我尝试将其添加到我的.htaccess文件中: &lt;如果%{SERVER_PORT}在GET,HEAD,OPTIONS中&gt; #这里什么都没有 &lt;/ If&gt; 但是当我尝试加载页面时,我仍然收到错误500。这是在我的本地安装上,以前运行良好(或者如果我删除了该代码)。我相信我已经AllowOverride All在全球范围内进行了设置,并且If指令的上下文应该允许它出现在.htaccess中(“上下文:服务器配置,虚拟主机,目录,.htaccess”)。 有人可以给我一些如何正确使用&lt;If&gt;指令的示例,或者一些有关为什么它对我不起作用的指南吗? 谢谢!

4
htaccess的加载时间影响
一般来说,在Apache上处理内容有两种可能性: 使用htaccess文件一一配置文件夹 完全辞职htaccess并将所有规则放入httpd.conf htaccess的使用是加载时间问题。我想知道,htaccess的使用在加载时间方面有多昂贵?有测试吗?

1
如何在Apache中使用.htaccess删除HTTP标头?
我有一个网站正在为PHP请求发送“ cache-control”和“ pragma” HTTP标头。 我没有在代码中这样做,所以我假设它是某种Apache配置,如该问题所建议的那样(对于该问题的上下文,您实际上并不需要去那里) 我的.htaccess文件中没有任何内容,所以它必须在Apache的配置中,但是我无法访问它,这是一个共享主机,我只能通过FTP访问我的网站目录。 有什么方法可以将指令添加到我的 .htaccess文件中,以删除由全局配置添加的标头,或者以其他方式覆盖该指令,以便不首先添加它们? 非常感谢 Daniel

4
IIS7:如何使用web.config文件阻止访问?
我知道IIS7允许我使用web.config xml文件进行每个目录配置。我有一个目录,其中包含一些不想通过Web访问的配置文件。本地的web.config文件禁止对其进行读取访问,这将是一个不错的解决方案。 web.config文件的内容应该是什么,以禁止通过Web访问这些文件? 编辑:我正在尝试将包含以下内容的web.config文件放入文件中: &lt;?xml version="1.0" encoding="utf-8" ?&gt; &lt;configuration&gt; &lt;system.web&gt; &lt;authorization&gt; &lt;deny users="*" /&gt; &lt;!-- Denies all users --&gt; &lt;/authorization&gt; &lt;/system.web&gt; &lt;/configuration&gt; 但是我仍然可以直接访问目录中的文件。它出什么问题了?如何调试正在发生的事情?

1
Apache .htaccess <ifModule在这里不允许
使用PHP 5.5在Ubuntu Precise上运行Apache 尝试访问我var/www/给了我500。 /var/log/apache2/error.log 显示: /var/www/web/.htaccess: &lt;IfModule not allowed here 我的.htacess是: DirectoryIndex app.php &lt;IfModule mod_rewrite.c&gt; RewriteEngine On RewriteCond %{REQUEST_URI}::$1 ^(/.+)/(.*)::\2$ RewriteRule ^(.*) - [E=BASE:%1] RewriteCond %{ENV:REDIRECT_STATUS} ^$ RewriteRule ^app\.php(/(.*)|$) %{ENV:BASE}/$2 [R=301,L] RewriteCond %{REQUEST_FILENAME} -f RewriteRule .? - [L] RewriteRule .? %{ENV:BASE}/app.php [L] &lt;/IfModule&gt; &lt;IfModule !mod_rewrite.c&gt; &lt;IfModule mod_alias.c&gt; RedirectMatch 302 …

3
如何从.htaccess中回显?
我们为htaccess写了很多代码,但是除了刷新页面之外,调试的最佳方法是什么? 有什么办法可以将其写到文件中?还是有一些回声/打印功能? 我只是怎么知道我的$ 1 $ 2 $ 3是什么?
13 .htaccess 

2
在htaccess中使用到期标头配置Favicon
我已经通过Apache服务器上的mod_expires实现了Expires标头,并且已经成功创建了大多数文件类型的expires标头,但是我在使用favicon时遇到了麻烦。 我最初尝试为.ico文件添加一组说明,但通过YSlow检查时没有设置有效期。 如果不起作用,我将其修改为GIF,但是这似乎有相同的问题。 网站上的其他gif文件已正确设置了到期标头(至少应设置为YSlow)。 任何人都可以阐明这种情况吗?

1
url的最大长度257个字符是否可以用于mod_rewrite?
我的网址方案是/foo/var1-var2-var3.../bar 我正在使用这些mod_rewrite规则: RewriteBase /foo/ RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^ index.php [PT,L] 如果字符串'var1-var2 ...'的长度大于257个字符,则返回错误403 Forbidden和404。但是,如果'var1-var2 ...'字符串的长度为257个字符或更少,并且后接斜杠,则剩余网址的长度可以为任意长度。如何克服这一限制?

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.