Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/8.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
Apache 如何在.htaccess重定向然后重写_Apache_.htaccess_Mod Rewrite_Url Rewriting_Friendly Url - Fatal编程技术网

Apache 如何在.htaccess重定向然后重写

Apache 如何在.htaccess重定向然后重写,apache,.htaccess,mod-rewrite,url-rewriting,friendly-url,Apache,.htaccess,Mod Rewrite,Url Rewriting,Friendly Url,好吧,我是个新手。。。第一次在这里问问题。 我有一个域名叫example.com 我的所有网站都位于以下URL: 我想要的是: 当用户在显示所有内容时,URL会一直说example.com 我尝试了以下方法: RewriteEngine on RewriteCond %{HTTPS} !=on RewriteRule ^$ /example.com/inter/pf2/ [L] 但它不起作用 编辑: 这是.htaccess: 重新启动发动机 #php——开始cPanel生成的处理程序,不编辑

好吧,我是个新手。。。第一次在这里问问题。 我有一个域名叫example.com 我的所有网站都位于以下URL: 我想要的是: 当用户在显示所有内容时,URL会一直说example.com 我尝试了以下方法:

RewriteEngine on
RewriteCond %{HTTPS} !=on
RewriteRule ^$ /example.com/inter/pf2/ [L]
但它不起作用

编辑:

这是.htaccess:
重新启动发动机
#php——开始cPanel生成的处理程序,不编辑
#将“ea-php74”包设置为默认的“PHP”编程语言。
AddHandler应用程序/x-httpd-ea-php74.php.php7.phtml
#php——结束cPanel生成的处理程序,不编辑
重写规则^/?$%{HTTP_HOST}/inter/pf2/[L]

对于您展示的样品,请尝试以下内容。请在测试URL之前清除浏览器缓存

RewriteEngine ON 
RewriteCond %{REQUEST_URI} !^/example\.com/inter/pf2 [NC]
RewriteRule ^(.*)/?$ %{HTTP_HOST}/inter/pf2/$1 [L]

有了你们展示的样品,你们能试一下下面的吗。请在测试URL之前清除浏览器缓存

RewriteEngine ON 
RewriteCond %{REQUEST_URI} !^/example\.com/inter/pf2 [NC]
RewriteRule ^(.*)/?$ %{HTTP_HOST}/inter/pf2/$1 [L]
这一行:

RewriteCond %{HTTPS} !=on
表示“如果未打开HTTPS”。换言之,“仅在通过普通连接时运行规则”http://

但您的示例显示您正在尝试访问“https://”URL

您可能不需要该条件,但如果您试图说“如果HTTPS已打开”,则需要
=
而不是
!=

RewriteCond %{HTTPS} =on
这一行:

RewriteCond %{HTTPS} !=on
表示“如果未打开HTTPS”。换句话说,“仅在通过普通“http://”连接时运行规则”

但您的示例显示您正在尝试访问“https://”URL

您可能不需要该条件,但如果您试图说“如果HTTPS已打开”,则需要
=
而不是
=

RewriteCond %{HTTPS} =on


它可以工作,但如果我键入example.com/folder,它将显示404错误。对于根文件夹中的文件,单击“确定”。如果我输入www.example.com,它会给我404error@nanmaniac,请在您的问题中显示您的完整htaccess文件。完成了,谢谢。它工作得很好,谢谢@nanmaniac,听到这个消息很高兴,很高兴能帮你干杯并愉快地学习它是有效的,但如果我键入example.com/folder,它会显示404错误。对于根文件夹中的文件,单击“确定”。如果我输入www.example.com,它会给我404error@nanmaniac,请在您的问题中显示您的完整htaccess文件。完成了,谢谢。它工作得很好,谢谢@nanmaniac,听到这个消息很高兴,很高兴能帮你干杯,很高兴学习你说的不工作是什么意思?你有什么错误吗?请详细说明404错误。对于2.htaccess文件,我遇到了这个错误您所说的
不工作是什么意思?你有什么错误吗?请详细说明404错误。使用2.htaccess文件会给我这个错误,没关系。现在,它可以工作,但仅适用于inter/pf2/文件夹中的文件。如果我尝试转到该文件夹的子文件夹,它将不工作。比如:给我404错误是的,因为你只匹配了一个URL。没关系。现在,它可以工作,但仅适用于inter/pf2/文件夹中的文件。如果我尝试转到该文件夹的子文件夹,它将不工作。比如:给我404错误是的,因为你只匹配了一个URL。