Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/wordpress/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 查询字符串无效的Mod Rewrite规则/WordPress、Apache、Virtualmin_Php_Wordpress_Apache_.htaccess_Url Rewriting - Fatal编程技术网

Php 查询字符串无效的Mod Rewrite规则/WordPress、Apache、Virtualmin

Php 查询字符串无效的Mod Rewrite规则/WordPress、Apache、Virtualmin,php,wordpress,apache,.htaccess,url-rewriting,Php,Wordpress,Apache,.htaccess,Url Rewriting,我有一个.htaccess重写规则,它应该很简单,但不起作用 RewriteRule ^advisors/(.+)/about/ /advisor_master/about/?advisor=$1 [NC,L] 这应该映射URL,例如: /advisor/stevens group/about/至/advisor\u master/about/?advisor=stevens group 但是,该页面显示404错误 现在,如果我直接转到URL/advisor\u master/about/?a

我有一个.htaccess重写规则,它应该很简单,但不起作用

RewriteRule ^advisors/(.+)/about/ /advisor_master/about/?advisor=$1 [NC,L]
这应该映射URL,例如:

/advisor/stevens group/about//advisor\u master/about/?advisor=stevens group

但是,该页面显示404错误

现在,如果我直接转到URL/advisor\u master/about/?advisor=stevens group,它会显示良好

我已经尝试过的疑难解答:

如果我将重写规则更新为目标路径中没有查询字符串,如下所示:

RewriteRule ^advisors/(.+)/about/ /advisor_master/about/ [NC,L]
它不会显示404错误,而是正确加载页面,除非没有查询字符串数据。当然,我需要这个查询字符串数据,所以这还不够好

在我的WordPress functions.php文件中,我还尝试了以下操作:

function init_custom_advisor_rewrite() {

        add_rewrite_rule(        
            '^advisors/([^/]+)/about/',        
            'index.php?page_id=1049&advisor=$matches[1]',       
            'top' );
}
add_action( 'init', 'init_custom_advisor_rewrite' );
我重新保存了永久链接设置。这也不起作用,它仍然显示404页面。如果我直接在浏览器中打开URL:

/php?page_id=1049&advisor=stevens group

这将重定向到正确的自定义页面模板:

/advisor\u master/about/?advisor=史蒂文斯集团

并按其应有的方式工作。另外,如果我从add_rewrite_rule()函数中删除查询字符串,就像在.htaccess文件中一样,它也可以在那里工作。但是,我需要动态数据的查询字符串

编辑:另一个想法是,如果直接访问脚本文件,例如,/test.php?advisor=stevens组在WordPress之外,则查看查询字符串值是否有效。这确实可以正常工作,并且可以访问查询字符串。因此,这意味着问题与WP permalink或映射结构有关

安装程序位于Apache2上运行Ubunutu 18的Virtualmin服务器上

以下是apache目录设置:

Options -Indexes +IncludesNOEXEC +SymLinksIfOwnerMatch +ExecCGI
allow from all
AllowOverride All Options=ExecCGI,Includes,IncludesNOEXEC,Indexes,MultiViews,Sy$
Require all granted
AddType application/x-httpd-php .php
有什么建议吗