jjzjj

HTAccess-Mod_rewrite

全部标签

php - Apache - 使用 .htaccess 重写尾随扩展

要删除尾随扩展名(在本例中为.php),我尝试了以下两组规则RewriteCond%{THE_REQUEST}(\S*?)/(.*?)\.php[NC]RewriteRule^%1/%2[L,R=301]RewriteCond%{REQUEST_URI}^(.*)$RewriteRule!\.php$%1.php[NC,L]和RewriteRule^(.*?)\.php$$1[NC,L,R=301]RewriteCond%{REQUEST_URI}^(.*)$RewriteRule!\.php$%1.php[NC,L]要将类似test.com/test.php的url转换为test.c

php - 使用 .htaccess 的 Apache 文档根目录

我有一个目录结构mymvc|--App|--Core|--logs|--public|--index.php|--vendor|--.htaccess我想要的是,如果有人点击我的网址www.example.com/mymvc/那么所有请求都必须通过public->index.php使用.htaccess文件。我无权访问httpd.conf文件。|--public|--index.php我希望我的public文件夹只能作为文档根访问,请求通过public文件夹内的index.php文件。没有人可以直接访问App、Core、logs等目录。意思是我希望我的公用文件夹是DOCUMENTROO

apache - 如何使用 .htaccess 提供 gziped 字体? (没有 mod gzip 或 deflate)

这是我尝试过的随机顺序的列表:AddHandlerapplication/x-httpd-php.otfAddTypedefault_mimetypeauto_prepend_file="otf.php"zlib.output_compression=Onoutput_handler=ob_gzhandlerheader("Content-type:application/octet-stream");即使服务器的所有PHP文件都使用zlib压缩,将.otf扩展名替换为.php也不起作用。 最佳答案 使用.htaccess,你可以这

php - Apache .htaccess : ErrorDocument and RewriteEngine not working together

请看下面的.htaccessErrorDocument404/404/RewriteEngineOnRewriteRule(.*)index.php[L]通过此设置,我在PHP中使用header('HTTP/1.1404NotFound');重定向到错误处理页面并发送适当的HTTP状态代码。发送了正确的404状态码,但是浏览器显示空白页面,访问日志显示"GET/invalid-url/HTTP/1.1"404-谁能告诉我如何使ErrorDocument与ApacheURL重写一起工作? 最佳答案 Yesdeclare404docum

php - htaccess 重定向 url 到页面

我想使用301重定向特定页面,但我的htaccess也在重定向包含相同开头的页面。例子:我要重定向:http://domain.com/advantage收件人:http://domain.com/index.php?page=someadvantage我目前的规则是RewriteRule^advantage"index.php?page=someadvantage"[L,R=301]这条规则也重定向http://domain.com/advantage-form.php到“一些优势”页面我该如何解决这个问题? 最佳答案 ^adva

php - 了解 .htaccess

我正在尝试使用.htaccess更改我的url类型,但我遇到了一些问题。我尝试了一些在线工具,但它们甚至对我不起作用。所以这就是我想要做的;我有像http://mydomain.com/profile.php?u=newuser这样的页面,我想这样制作:http://mydomain.com/newuser但到目前为止我无法实现它。这也是我试过的;Options+FollowSymLinksRewriteEngineonRewriteRule(.*)profile.php?u=$1在.htaccess中进行更改后,我还必须在我的php文件中进行任何更改吗?另外,当尝试打开http://

PHP 5.3.6 段错误(在 apache w/mod_php 和 nginx w/fpm 中)

我在PHP5.3.6中遇到令人讨厌的段错误(从源代码编译,Slackware13.1x86,Linode中的VPS)。它发生在apache和nginx(fpm)中。终于设法得到一个核心转储:00x083db383in_zval_ptr_dtor()10x083f3c45inzend_hash_destroy()20x083e6fbain_zval_dtor_func()30x083da69ain_zval_dtor()40x083db3dfin_zval_ptr_dtor()50x083f3c45inzend_hash_destroy()60x083e6fbain_zval_dtor_

php - Apache mod_rewrite : what am I doing wrong?

我在我的.htaccess文件中做了一个非常简单的重写,但它并没有完全按照我想要的方式工作。这是我的代码:RewriteEngineonRewriteRule^admin/?$admin.php[L]RewriteRule^([0-9]*).*$index.php?id=$1[L]基本上我想要的是每个页面都是这样的:/0/title。标题只是为了让用户更清楚地了解URL,但应该将数字(id)传递给我的PHP脚本。使用此代码,id不会传递到我的index.php脚本。如果我只是从第四行删除“.*”,它就会传递给该脚本,但是数字后带有文本的URL不会传递到我的index.php文件。我做错

php - htaccess 不适用于 iis

如何将.htaccess转换为web.config。我刚刚知道我需要使用web.config而不是htaccess。请在下面找到我的htaccessRewriteEngineOnRewriteBase/RewriteCond%{REQUEST_FILENAME}!-fRewriteCond%{REQUEST_FILENAME}!-dRewriteRule^(.*)$index.php/$1[L]如何将其转换为web.config? 最佳答案 将下面的代码复制粘贴到您的web.config中

php - htaccess 创建集中的 php 文件

我不知道如何实现以下目标。目前我有一个问题。每当用户访问www.example.com或具有相同域的任何链接时,它将运行centralize.php(示例)。此PHP脚本将根据链接确定调用哪个PHP,类似于集中式php文件。我尝试使用.htaccess来实现这一点,但没有成功。我做错了什么或者有其他方法可以做到这一点吗?RewriteEngineonRewriteRule/(.*)/iindex4.php$1[PT]以上是我到目前为止尝试过的,但它不符合我的要求,并且明显有缺陷或错误。问题总结-导航具有相同域的任何url它将运行某个PHP文件-除了.htaccess之外还有其他方法吗