Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/275.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 .htaccess在SSL/端口443下被忽略_Php_Apache_.htaccess_Ssl - Fatal编程技术网

Php .htaccess在SSL/端口443下被忽略

Php .htaccess在SSL/端口443下被忽略,php,apache,.htaccess,ssl,Php,Apache,.htaccess,Ssl,我有一个非常基本的htaccess文档,它将请求转发给一个php文件来处理 RewriteEngine On RewriteCond %{REQUEST_FILENAME} !-f RewriteCond %{REQUEST_FILENAME} !-d RewriteRule ^(.*)$ /controller.php [L] 这在正常浏览时工作正常。但是,如果我切换到使用https,它将不再侦听htaccess文档中的任何内容 我只是想知道这是一个服务器配置问题,可以做些什么呢?您应该确

我有一个非常基本的htaccess文档,它将请求转发给一个php文件来处理

RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ /controller.php [L]
这在正常浏览时工作正常。但是,如果我切换到使用https,它将不再侦听htaccess文档中的任何内容


我只是想知道这是一个服务器配置问题,可以做些什么呢?

您应该确保从与非ssl版本相同的目录加载内容。例如,在某些配置中,http的默认值为public_html目录,而https的默认值为private_html目录。如果在这两种情况下从同一目录加载内容,htaccess应该可以正常工作。

发现问题

这是一个httpd.conf问题,AllowOverride被设置为None而不是All。如果将此设置为“无”,则不允许htaccess通过SSL端口工作

可从以下地址找到:

“打开位于/etc/httpd/conf/httpd.conf的Apache配置文件
将DocumentRoot目录指令中的AllowOverride None更改为AllowOverride All,通常“

都在同一目录中。当标准文件实际存在时,HTTPS可以很好地处理这些文件。但不能与控制器一起工作。在我看来,这是服务器配置问题。您应该与服务器管理员联系以解决此问题