Questions tagged «htaccess»

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

2
自制网址缩短程序重定向与301重定向冲突
我有一个最初使用经典ASP构建的网站。大约一年前,它已用PHP重写。这导致文件扩展名发生更改,某些页面被移至网站中的新位置。自然地,我们进行了301次从旧URL到新URL的重定向,以便他们的用户和搜索引擎可以找到他们的新位置。这很好。 我们还为他们构建了一个工具,该工具使网站所有者可以创建自己的微型URL,该URL会重定向到页面中包含URL中包含的Google Analytics(分析)广告系列跟踪变量,以便他们可以跟踪广告系列并查看其效果。 我遇到的问题是广告系列跟踪规则与301重定向冲突,并完全阻止了重定向。 这是广告系列跟踪代码: RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /tracking.php?$1 [R=301,L] 如您所见,它会检查文件是否存在以及是否不存在,它会重定向到跟踪脚本(tracking.php),然后该脚本将获取跟踪代码并使用查询中的Google Analytics(分析)广告系列代码重定向到正确的URL串。 该代码导致如下规则失败: redirect 301 /about.asp /about.php redirect 301 /capabilities.asp /capabilities.php redirect 301 /capacitors.asp /capacitors.php 这是合理的,因为跟踪规则说:“如果找不到文件,则重定向到tracking.php”,这不能一起工作。我需要的是让301重定向首先运行,如果它们都不匹配,则重定向到跟踪脚本。将跟踪规则放在301重定向下方不会更改结果。 可以通过.htaccess完成吗?还是我需要修改跟踪脚本,以便在未找到广告系列的情况下进行检查以查看广告系列ID是否实际上是需要重定向的旧页面,然后从该页面进行301重定向?

1
.htaccess重写URL导致缺少CSS
我正在尝试从中获取我的网址: example.com/view.php?id=15 对此: example.com/watch/15 我的代码.htaccess如下: Options -Indexes Options +FollowSymlinks RewriteEngine On RewriteRule ^watch/([^/]+) view.php?id=$1 [NC] 现在,如果我去example.com/watch/15加载内容,但没有任何JS,则CSS,因为在这种情况下,/watch它将在不存在的文件夹下查找CSS和JS 。 如何使此选项正常工作?我不想创建watch文件夹并复制粘贴CSS和JS,以便将其正确嵌入。

3
htaccess使用SSL / HTTPS将非www重定向到www
我想要一个重写规则,将所有内容重定向到https:// AND www。 例如http://example.com应该去https://www.example.com 这就是我所拥有的: RewriteEngine On RewriteCond %{SERVER_PORT} !=443 RewriteCond %{HTTP_HOST} ^(www\.)?example\.com$ [NC] RewriteRule ^(.*)$ "https\:\/\/www\.example\.com\/$1" [R=301,L]

10
需要阻止机器人杀死我的Web服务器
我的托管帐户中的某些网站上存在EXTREME机器人问题。僵尸程序占用了我整个托管帐户超过98%的CPU资源和99%的带宽。这些漫游器每小时为我的网站产生超过1 GB的流量。所有这些站点的实际人流量都不超过100 MB /月。 我已经对robots.txt和.htaccess文件进行了广泛的研究,以阻止这些bot,但是所有方法均失败了。 我也将代码放在robots.txt文件中,以阻止对脚本目录的访问,但是这些漫游器(Google,MS Bing和Yahoo)会忽略规则并始终运行脚本。 我不想完全阻止Google,MS Bing和Yahoo僵尸程序,但我想限制那里的爬网率。另外,在robots.txt文件中添加抓取延迟语句不会降低机器人的速度。下面列出了我当前用于所有网站的robots.txt和.htacces代码。 我已经设置了Microsoft和Google网站管理员工具,以将抓取速度降低到绝对最小值,但是它们仍然以10次点击/秒的速度访问这些网站。 此外,每次我上载导致错误的文件时,整个VPS网络服务器都将在几秒钟内关闭,以至于由于这些bot的点击量激增,我什至无法访问该网站纠正此问题。 我该怎么做才能阻止网站流量的出现? 在过去的几个月中,我多次尝试向我的网络托管公司(site5.com)询问此问题,他们无法帮助我解决此问题。 我真正需要的是阻止Bots运行rss2html.php脚本。我尝试了会话和Cookie,但都失败了。 robots.txt User-agent: Mediapartners-Google Disallow: User-agent: Googlebot Disallow: User-agent: Adsbot-Google Disallow: User-agent: Googlebot-Image Disallow: User-agent: Googlebot-Mobile Disallow: User-agent: MSNBot Disallow: User-agent: bingbot Disallow: User-agent: Slurp Disallow: User-Agent: Yahoo! Slurp Disallow: # Directories User-agent: * Disallow: / Disallow: …

1
.htaccess的替代产品(由于性能不佳)
有人告诉我,应尽可能避免使用.htaccess,因为它会降低服务器性能,而新服务器会禁用它,或者只是不再实施它。我不知道这是多么真实,但是如果是这样,我希望找到一种替代方法来重写我的URL。 我用的只是将URL从转换example.com/page.php?lang=LANG为example.com/LANG/page。

3
我想在不影响SEO的情况下测试网站上的重大更改
我想将我的所有网站文件替换为服务器上的新文件,并测试它们是否可以正常运行,但是我不希望在这种情况下进行爬网,或者我希望爬网程序能够查看新页面中的内容。 我只想将其更改为15分钟左右,但我对其他内容进行了5分钟测试,谷歌网站管理员告诉我在此期间他们有很多404,并且我不希望这种情况再次发生。 除此之外,我不想编写我的整个.htaccess文件。我考虑过将所有URL重定向到我的主页并应用更改,但是我认为这可能不是一个好习惯,有什么好主意吗?

5
如何验证服务器上哪些模块处于活动状态?
在尝试解决我网站上的问题时,有关我得到的.htaccess文件的建议是 首先,请在服务器上检查所有不同的模块(如果已启用),然后将其删除。 <IfModule ...></IfModule> 块。他们给您的服务器带来不必要的压力。 我不知道该在哪里查看模块是否处于活动状态-CMS中是否存在该模块?在httpd.conf文件中?在我服务器上的文件中?我应该对.htaccess进行一些修改以作为测试吗?但是,除此之外,推荐自己是否不合适?谢谢。 这是已提出建议的.htaccess文件: Options +FollowSymLinks -MultiViews RewriteEngine on AddHandler x-httpd-php .html .htm <ifModule mod_gzip.c> mod_gzip_on Yes mod_gzip_dechunk Yes mod_gzip_item_include file \.(html?|txt|css|js|php|pl)$ mod_gzip_item_include handler ^cgi-script$ mod_gzip_item_include mime ^text/.* mod_gzip_item_include mime ^application/x-javascript.* mod_gzip_item_exclude mime ^image/.* mod_gzip_item_exclude rspheader ^Content-Encoding:.*gzip.* </ifModule> <ifModule mod_expires.c> ExpiresActive On ExpiresDefault "access plus 1 seconds" …

1
将站点移至新服务器后,.htaccess和mod_rewrite出现问题
该网站似乎绘制了正确的链接,但没有将我重定向到正确的视图。 相同的代码在旧服务器上可以正常工作,位于http://ruse​​.systemio.net/q&a/。新服务器位于http://www.rusereplays.com/q&a/ 我遇到的问题是,如果您单击该页面上的链接到某个问题,它将重写该链接并重定向到该站点,但是对于新服务器,它似乎只是重定向到index.php。 这是我.htaccess在两台服务器上都使用的 <IfModule mod_rewrite.c> RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-f RewriteRule ^(.*)$ index.php/$1 [QSA,L] </IfModule> ErrorDocument 404 /index.php 这是phpinfo两个服务器的 旧-> http://ruse​​.systemio.net/scripts/phpinfo.php 新增-> http://www.rusereplays.com/scripts/phpinfo.php 任何对如何解决此问题有建议的人还是也可以帮助我找到解决问题的方法?
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.