自动URL重写
我创建了.htaccess文件. 原始URL是: ?page = 1&ipp = all&link = view_link 重定向: 重定向正确.但是现在问题是 只有在我手动进行重写的URL时,才会重定向. 但它只能自动进行. 我的要求是,如果有人键入" page.php?pagp?page = 1&ipp = all&link = view-link",那么自动convert/page/page/1/all/link.html 解决方案 我仍然不清楚您想要的问题,但是我会在黑暗中刺入,并假设您想将用户从这些"丑陋" URL重定向到更清洁的格式.如果是这样,这应该有效. RewriteCond %{THE_REQUEST} ^[A-Z]+\s/[^/]+/.*\.php RewriteCond %{QUERY_STRING} page=([^&]+) RewriteRule ^([^/]+/[^/]+)\.php /$1/%1 [C]
0 2023-06-03
编程技术问答社区
我的codeIgniter不能从index.php跳到正确的地址。
我的codeigniter索引地址是localhost/codeigniter_2.2.0/ 如果我在索引页面上单击[登录]按钮,则浏览器将跳到localhost/index.php/login. 但是localhost/codeigniter_2.2.0/index.php/login是正确的地址.我添加到.htaceess RewriteEngine On RewriteBase /codeigniter_2.2.0/ ,但它仍然不起作用. 有解决方案吗? thx! 解决方案 在config/config.php 中 1: $config['base_url'] = 'http://localhost/project-name/'; 2: $config['index_page'] = ''; 确保您已经配置了routes.php 尝试在主目录中尝试这些HTACCESS 第一个 Options +FollowSymLink
0 2023-06-03
编程技术问答社区
我怎样才能使URL对搜索引擎友好?
我想cahange mysite.com/profile.php进入mysite.com/profile 我以 的方式写了htacess文件 RewriteEngine On RewriteRule ^profile/?$ profile.php [NC,L] 并放置在根目录中.它行不通.我使用Apache服务器.我的程序怎么了? 解决方案 尝试这样的东西: RewriteEngine on RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}\.php -f RewriteRule ^(.*)$ $1.php 这样,您不必为每个URL做到这一点.
0 2023-06-03
编程技术问答社区
如何将URL中的一个目录视为一个参数?
我确定我需要为此使用一些重写条件,但是我不能完全围绕它. 作为示例URL: https://example.com/guest-area/{TENANT-NAME}/login 在这里,{TENANT-NAME}应被php视为get param,因此实际上将URL视为: https://example.com/guest-area/login/?tenant={TENANT-NAME} 但是,它应该出现在地址栏中,作为第一个示例,并可以像这样访问用户. {TENANT_ID}的值将始终以/guest-area为之后,因此在下一组正向斜线之间给出的任何内容都应将其视为$_GET['tenant']而不是目录.之后的任何目录(例如/login)是"真实"的目录. 解决方案 将其放入您的.htaccess Options +FollowSymLinks RewriteEngine on RewriteRule ^guest-area/(.*)/
0 2023-06-03
编程技术问答社区
如何将WordPress URL重写以将第一个子目录用作查询串.
如果类别匹配程序代码,我需要我的URL中的第一个子目录来重写为Querystring的URL: 例如,我需要: 重写: php?page_id = 16&major = aubu ,但我不希望它影响当前的URL,例如 / 哪个不应重写: 这是我到目前为止根本无法使用的东西. (基于:function eg_add_rewrite_rules() { global $wp_rewrite; $new_rules = array( '(.+)/?$' => 'index.php?page_id=16&major=' . $wp_rewrite->preg_index(1) ); $wp_rewrite->rules = $new_rules + $wp_rewrite->rules; } add_action( 'generate_rewrite_rules', 'eg_add_rewrite_rules' ); 更新:上面的代码现在重定向到适当的
0 2023-06-03
编程技术问答社区
htaccess重写后ajax页面导航不工作
我使用.htaccess从 中重写我的URL /list.php?pat=free&mainCol=maincate&subCol=shoes to /主丝c/shoes 重写后,AJAX下一页按钮不再工作.它应该从与list.php同一文件夹加载list_pull.php $.post("list_pull.php",{ pageCurrent:pageClick, pullSubCol:$("#pullSubCol").val()}); 和htaccess就像这个 RewriteRule ^([^/.]+)/([^/.]+)$ /list.php?pat=free&mainCol=$1&subCol=$2 [L] 我尝试使用完整路径 http://www.mydomain.com/list_pull.php - 不起作用 我尝试创建一个文件夹" maincate",然后将ListPull.p
0 2023-06-03
编程技术问答社区
重写定制的php电子商务网站的URL
我已经进行了很多试验,但是它们对我不起作用,所以我必须提出此查询,我需要非常具体的解决方案. 不使用CMS.该网站是使用PHP 开发的电子商务网站 我的网站URL结构是 对于产品页面= https://www[dot]sitename.com/product.php?product=productid 对于类别页面= https://www[dot]sitename.com/category.php?category=category-name 对于子猫页= https://www[dot]sitename.com/category.php?subcategory=sub-category-name 我想要 对于产品页面= https://www[dot]sitename.com/product/productid/ 类别页= https://www[dot]sitename.com/category/category-name subcat Page
0 2023-06-03
编程技术问答社区
从nginx config在虚拟主机上的nginx config中检测url查询参数
我在此单个服务器上运行的虚拟主机(站点)很少. 现在,在这个root VirtualHost上,我有一个论坛(在Docker上运行),但由Nginx mysite.com服务,并且我的AMP页面已在/amp路线上提供 mysite.com/amp.这些AMP页面基本上是1个单个index.php文件,它们都由此1文件处理.这些由php使用nginx提供. 我想要的是,当用户键入以下模式匹配的这些请求中的任何一个: mysite.com?amp=1 mysite.com/t/my-topic/121?amp=1 mysite.com/c/CategoryCaseInsensitive/13?amp=1 mysite.com/u/john?amp=1 mysite.com/u/john/summary?amp=1 然后 我想重定向此请求并将其发送到我的放大器页面(该请求是在PHP文件上运行的,然后由index.php在/var/www/amp中的index.p
0 2023-06-03
编程技术问答社区
.htaccess 重写.php到'虚拟文件夹'。
可能的重复: with .htaccess emove .php扩展 我有 http://www.example.com/test/categoryform.php 在我的.htaccess文件中,如何将其重写为: http://www.example.com/test/categoryform/ 解决方案 尝试此代码 RewriteEngine On # turn on the mod_rewrite engine RewriteCond %{REQUEST_FILENAME}.php -f # IF the request filename with .php extension is a file which exists RewriteCond %{REQUEST_URI} !/$ # AND the request is not for a directory RewriteRule (.*) $1\.php [L] # redirect t
0 2023-06-03
编程技术问答社区
Htaccess URL重写为另一张地图
当我转到{url}/klanten/home/or {url}/klanten/logout/a 500内部服务器错误时. 我的htaccess: RewriteEngine on RewriteRule ^klanten/([^/]+)/?$ klanten/$1.php [L,QSA,NC] RewriteRule ^error/([^/]+)/([^/]+)/([^/]+)/([^/]+)/?$ error.php?type=$1&error=$2&file=$3&from=$4 [L,QSA,NC] RewriteRule ^email/([^/]+)/?$ email.php?id=$1 [L,QSA,NC] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME}.php -f RewriteRule ^(.
0 2023-06-03
编程技术问答社区
Apache RewriteRule .* index.php [NC,L] 不工作
我试图将所有内容重定向到我的/网站/文件夹/目录. 我使用此简单代码添加了一个简单的.htaccess(我知道这需要.htaccess中的更多代码,但这只是一个测试). RewriteEngine on RewriteRule .* index.php [NC,L] 我尝试时: http://127.0.0.1:8888/website/folder/fileDoesntExistMustGoIndex 我有一个"未找到对象404"错误,并且访问显示: 127.0.0.1 - - [13/Mar/2010:13:48:31 -0500] "GET /website/folder/fileDoesntExistMustGoIndexHTTP/1.1" 404 1118 我已经检查了httpd.conf,我看不到可以更改此.htaccess语句的内容.有什么想法吗? 编辑: RewriteEngine on RewriteRule .* htt
0 2023-06-03
编程技术问答社区
URL重写.htaccess不传递参数
我正在使用PHP.我想将每个请求重定向到index.php文件和访问参数,例如,mysite.com/a应该重定向到mysite.com/index.php?id=a,以便我可以使用代码中的代码中的参数$ _get [" id"],为此,我创建了一个带有以下代码的.htaccess文件. Options +FollowSymlinks RewriteEngine on RewriteRule [a-z] index.php?id=$1 [NC] 注意:在这里,我正在考虑使用小写字母的每个请求. 我试图在我的index.php文件中访问ID: 这是重定向的,但不传递参数.所以我的输出就是这样: sample redirection: 它不打印参数.帮助. 解决方案 您需要一个美元标志[a-z]. RewriteRule
0 2023-06-03
编程技术问答社区
.htaccess:将所有的http请求重定向到一个文件,不需要404响应代码。
我想将所有HTTP请求重定向到一个文件controller.php # My .htaccess RewriteCond %{REQUEST_URI} !\.(.+)$ RewriteRule ^(.*)([^/])$ http://%{HTTP_HOST}/$1$2/ [L,R=301] RewriteRule ^([a-zA-Z0-9_-]+)$ controller.php 考虑此请求http://mysite.com/en-US/messages/new/ 我有PHP脚本以获取所有URL参数并对其进行处理 显示controller.php,但Apache也发送了404响应代码. 如何制定一个很好的重写规则以防止404响应? 解决方案 您的正则不包括/字符. RewriteRule ^([a-zA-Z0-9_-/]+)$ controller.php
0 2023-06-03
编程技术问答社区
为什么我的变量没有被放进$_GET?
也许我缺少一些东西,但我似乎无法弄清楚. 我有一个重写: RewriteRule ^view/(\w+)$ view.php?mmdid=$1 [L] ,当我转到mydomain.org/view/3时,$ _GET数组为空.没有密钥'mmdid'. 但是,当我将规则更改为其他事物时,例如: RewriteRule ^viewz/(\w+)$ view.php?mmdid=$1 [L] 当我访问mydomain.org/viewz/3时,它可以正常工作.我得到数组([mmdid] => 1)打印$ _get. 没有其他类似的规则可能会发生冲突,我已经重新启动了Apache. 关于为什么会发生这种情况的任何想法? "查看"关键字还是什么? 这是重写日志的内容: 192.168.204.187 - - [15/Jun/2009:13:01:19 --0400] [mydomain.org/sid#2787ab8][rid#2a61030
0 2023-06-03
编程技术问答社区
用.htaccess删除部分URL
我最近删除了Magento的一个模块,该模块创建了Vanity URL,用于过滤后的搜索. 当我删除此模块时,现在使用URL参数用于所有过滤导航页面. 我想将所有这些虚荣URL重定向到同一页面,而没有URL的虚荣部分. 我想要重定向的URL的一个示例是: /手工/高速/shopby/brand-jet_towel-ultradry-magnum_multi_dri-dyson/handdryer_dryingtime_seconds-under_10_seconds/ 重定向到 /手工/高速 模块的工作方式是添加字符串" shopby",然后将每个参数转换为可读格式. 我需要一个重写规则来重新指导所有包含" shopby"的URL到同一网址 我希望这是有道理的. 期待听到某人的回音 解决方案 应该有效: RewriteEngine on RewriteRule (/.*)/shopby $1 [R=302,L] 测试后,您可以
0 2023-06-03
编程技术问答社区
htaccess重写条件不工作
我在网站的URL上工作.我刚刚从 重写URL http://www.website.com/index.php?url=some-text to http://www.website.com/some-text 为此,我正在使用以下.htaccess 的代码 Options +SymLinksIfOwnerMatch RewriteEngine on RewriteBase / RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{REQUEST_FILENAME} !-l RewriteRule ^(.*)$ index.php?url=$1 [L,QSA] 现在,我想在URL中添加另一个变量page number http://www.website.com/index.php?url=some-text&page=1 我想像
0 2023-06-03
编程技术问答社区
WooCommerce重写产品子类别的规则
在此处使用此代码: add_filter('rewrite_rules_array', function( $rules ) { $new_rules = array( 'products/([^/]*?)/page/([0-9]{1,})/?$' => 'index.php?product_cat=$matches[1]&paged=$matches[2]', 'products/([^/]*?)/?$' => 'index.php?product_cat=$matches[1]', ); return $new_rules + $rules; }); 并具有这些永久链接设置 产品类别基础: products 产品永久链接 - 自定义基础: /products/%product_cat% 我得到以下内容: /products/%category_name%/(父产品类别页面正常工作). /produ
0 2023-06-03
编程技术问答社区
如何管理$ _server ['php_self']在形式的作用和htaccess一起用于同一页面上的urlrewrrewrrewrrewser?
如何管理$ _server ['php_self']在形式和htaccess进行URL屈服的情况下使用? 如果我提交表格和操作属性,我通过" $ _server ['php_self']",与此同时,我使用的是同一页面上的URL重写.然后,这两个事情将互相矛盾导致在地址栏中显示表单的动作值.那么,我如何管理它以使$ _server的URL重写['php_self']? 这里的重写规则是同样更改URL文件的名称,就好像表单被提交到任何文件say direction.php ,然后重写将将其更改为 30/redirect.html 解决方案 我不确定您拥有的重写设置,所以我猜想您必须在表单操作中指定URL.您将无法使用$ _server ['php_self'],因为它将返回实际执行的文件路径. 例如: to
0 2023-06-03
编程技术问答社区
重写条件不起作用
如何在OpenCart中重写我的搜索页面的URL,就像 http://IP/opencart/index.php?route=product/search&filter_name=24 但我需要像 一样显示它 http://localhost/opencart/product/search/42 在用户Freindly的任何代甲板中的ORELSE.我尝试了 RewriteEngine On RewriteBase /opencart RewriteRule ^sitemap.xml$ index.php?route=feed/google_sitemap [L] RewriteRule ^googlebase.xml$ index.php?route=feed/google_base [L] RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteCond %{R
0 2023-06-03
编程技术问答社区
具有更好的 htaccess 的 PHP MVC
我不知道htaccess是如何工作的,无论我读了多少个教程,它的理论都不会在我的脑海中连接. 我正在构建一个简单的MVC框架,除了我不喜欢与HTACCESS打交道的方式外,它可以很好地工作.要正确地重写URL,这就是我正在做的: RewriteEngine on RewriteRule ^users/([^/]+)(/([^/]+))?$ controller/users.php?method=$1¶m=$3 如果我添加了一个新的控制器,则必须进入htaccess并添加新行: RewriteRule ^access/([^/]+)(/([^/]+))?$ controller/access.php?method=$1¶m=$3 有没有一种方法可以使其全部使用通配符字段自动,因此我不必每次更新时都可以访问HTACCESS? 解决方案 您可以尝试以下方法: RewriteEngine on RewriteCond %{REQUEST_F
0 2023-06-03
编程技术问答社区