nwa*_*lke 5 mod-rewrite .htaccess php5 php-fpm apache-2.4
我在服务器上使用 PHP-FPM 设置了 Apache 2.4。要从 Apache 传递到 PHP-FPM,我使用以下命令:
ProxyPassMatch ^/(.*\.php)$ fcgi://127.0.0.1:9001/hosting_files/site.com/admin_secure/$1
Run Code Online (Sandbox Code Playgroud)
“admin_secure”是虚拟主机中的 DocumentRoot。
在该目录中,我有一个 .htaccess 文件,其中包含以下内容:
<IfModule mod_rewrite.c>
RewriteEngine on
RewriteRule ^$ webroot/ [L]
RewriteRule (.*) webroot/$1 [L]
</IfModule>
Run Code Online (Sandbox Code Playgroud)
该站点可以正常工作,直到我尝试访问应该在webroot目录中的内容为止。例如,如果我转到目录vendors/kcfinder/browse.php内的哪个,则会webroot收到“找不到文件”错误。如果我去webroot/vendors/kcfinder/browse.php,它的工作原理。
我打开了重写和代理日志记录,看起来重写从未发生过。它只发送我在 URL 中输入的任何内容(如果它是 PHP 文件)。
有没有办法编写我的 ProxyPassMatch 语句来接受这样的重写?
您的问题是 .htaccess 文件永远不会被读取。仅当 apache 确定需要在其本地文件系统上查找所请求的资源时,才会读取 .htaccess。然而,您告诉 apache 将请求转发到另一个进程......
您需要将重写添加到您的主配置中。
| 归档时间: |
|
| 查看次数: |
5966 次 |
| 最近记录: |