草庐IT

HTAccess-Mod_rewrite

全部标签

php - 重写 url 以删除问号并在 htaccess 中添加斜线

我花了几个小时尝试实现我认为很容易的事情。我有http://localhost/testing_url_document/second.php?id=2并想打开它http://localhost/testing_url_document/second/id/2。我已经成功删除了php扩展,但仍然坚持重写网站页面。在htacces中,我遵循了以下过程。RewriteEngineOnRewriteCond%{REQUEST_FILENAME}!-fRewriteRule^([^\.]+)$$1.php[NC,L]这是我的首页索引.phpclickhere第二个.phpsecond.php应

php - .htaccess 使用 GET 参数重定向

我已经检查了很多与.htaccess重定向相关的答案,但我无法详细说明我的问题:我有一个旧网站,其中的博客条目地址如下:http://ellrohir.mzf.cz/index.php?page=blog&id=77现在我还有一个带有“niceurls”的新网站,可以使用以下方式找到博客条目:http://alois-seckar.cz/politics-blog/77我想“关闭”旧页面并将所有旧链接重定向到新站点。如何捕获旧网址并将其转移到新网址?我仍然想不出必要的.htaccess代码:( 最佳答案 试试这个:RewriteEn

php - 如何最小化 .htaccess 规则?

我有以下用于seo友好url的.htaccess规则:.htaccess规则:Options-MultiViewsErrorDocument404http://localhost/aponit/dev/not-found.phpErrorDocument500http://localhost/aponit/dev/404.phpRewriteEngineonRewriteRule^(?:zones/)?update/(\w+)/?$zones/update.php?z=$1[L,QSA,NC]RewriteRule^(?:cable-types/)?update/(\w+)/?$cab

php - htaccess 命令只允许来自同一服务器的请求(不指定 IP)

我想要实现的是使用htaccess仅允许来自同一服务器的请求,但通过使用可用变量而不指定IP来实现。目标是能够对相应文件夹中的文件运行cron作业和ajax请求,但如果尝试直接访问则返回404页面。这是我目前所拥有的:Options-MultiViews+FollowSymLinksRewriteEngineOnRewriteCond%{REMOTE_ADDR}!%{SERVER_ADDR}[NC]RewriteRule^(.*)$/error404.html[L,R=404]这适用于ajax。如果服务器碰巧使用相同的传出IP,它也适用于cronjobs,但如果服务器的传出IP与站点的

php - URL 重写,使用.htaccess 还是PHP 来确定使用的内容?

在使用URL重写美化的时候,有没有想过是用PHP脚本做内容计算,还是硬编码到.htaccess文件中?例如,WP将简单规则添加到.htaccess文件中RewriteBase/RewriteRule^index\.php$-[L]RewriteCond%{REQUEST_FILENAME}!-fRewriteCond%{REQUEST_FILENAME}!-dRewriteRule./index.php[L]它将所有内容定向到index.php页面。然后它有一个PHP脚本(canonical.php)解析$_SERVER['REQUEST_URI']以找出实际提取的内容。无需使用PHP

php - 如何使用 Apache Mod_rewrite 删除 php 扩展,同时保留 GET 参数?

我试图从我的网站中删除PHP扩展。当用户请求一个PHP文件时,PHP将被删除,用户将被重定向,当用户输入一个没有PHP的URL时,将提供实际的PHP文件。除非URL中有GET参数,否则效果很好。我的规则如下:#remove.phpONLYifrequesteddirectlyRewriteCond%{THE_REQUEST}(\.php\sHTTP/1)RewriteRule^(.+)\.php$/$1[R=301,L,QSA]#removetrailingslashONLYifitisnotanexistingfolderRewriteCond%{REQUEST_FILENAME}!

php - 使用 .htaccess 绕过 Zend Framework 并在子目录中运行不同的框架

我正在尝试在Zend站点的子目录中运行非Zendphp应用程序。我想绕过.htaccess中子目录“/branches”中所有文件的Zend应用程序。到目前为止,我发现的解决方案都没有奏效。这是当前的.htaccess文件:RewriteEngineonRewriteBase/#WWWResolveRewriteCond%{HTTP_HOST}^domain\.com$[NC]RewriteRule^web/content/(.*)$http://www.domain.com/$1[R=301,L]#EliminateTrailingSlashRewriteRuleweb/conten

php - htaccess 最佳实践

我想得到这个最终url:'理想网址'domain/services/city/name/来自这个网址:'真实网址'domain/page.php?s=services&c=city&a=name这在用户键入“理想”URL和从按钮单击“真实”URL时都应该起作用。我希望这也适用于domain/services/作为domain/page.php?s=services或domain/services/city/作为domain/page.php?s=services&c=city。我不是在问代码,而是要达到这个结果的最佳实践是什么。我应该只使用htaccess并为每种情况编写命令,还是我必

apache - .htaccess 中的 php 指令?

我曾尝试通过.htaccess对php进行一些更改,但都没有产生任何结果。例如:php_valuememory_limit256M内不会激活。尝试设置SetEnvPHPRC/home/username/public_html/php.ini或任何类似的咒语,例如SetEnvPHPRC/home/username/some_path,将不会工作在phpinfo中产生任何差异。我确实看到_SERVER["PHPRC"]确实已设置,但没有值被覆盖,例如上面提到的那样。我的phpinfo如下:https://gist.github.com/ylluminate/08efd9a284472363

php - 使用 htaccess 和正则表达式重写旧 URL

我在运行的基于WordPress的网站上遇到关于我的.htaccess文件中的重写规则的问题。最近对网站进行了大修,我的永久链接结构发生了变化。以前是/%year%/%monthnum%/%postname%.html现在是/%year%/%monthnum%/%postname%/我遇到的问题是Google存储了所有.html链接。因此,通过Google访问链接的访问者会收到404。我希望发生的是,只要传入的URL末尾有.html并匹配永久链接结构格式,重定向到相同的URL,只是没有html扩展名。我尝试将重写规则添加到我的.htaccess文件中,但遇到无法正常工作的问题。我不确定