繁体   English   中英

使用 .htaccess 始终重定向到 index.php 时出现 500 内部服务器错误

[英]500 Internal Server Error when using .htaccess to always redirect to index.php

我目前正在构建自己的 PHP 框架以获取一些经验并遵循指南。

但是,我在实现 .htaccess 文件时遇到了一些麻烦。 当我打开我的网站时,它会显示 500 内部服务器错误。

我的文件夹结构如下所示:

ProjectName/
  |- src/
  |  |- Controller/
  |  |- Model/
  |  |- View/
  |  | .htaccess
  |  | Dispatcher.php
  |  | Request.php
  |  | Router.php
  |  | index.php
  | .htaccess
  | Dockerfile
  | docker-compose.yml

这两个 .htaccess 文件如下所示:

项目名称/src/.htaccess:

RewriteEngine on
RewriteCond %{REQUEST_URI} !\.(?:css|js|jpe?g|gif|png)$ [NC]
RewriteRule ^([a-zA-Z0-9\-\_\/]*)$ index.php?p=$1

项目名称/.htaccess:

RewriteEngine on
RewriteRule ^([a-zA-Z0-9\-\_\/]*)$ src/$1

最让我困惑的是:如果我没有实现我的 .htaccess 文件并且我打开我的网站,那么它会打开 index.php。

我的 docker-image 是php:7.2-apache并且似乎没有启用mod-rewrite 因此,在运行命令a2enmod rewrite后,我的网站再次运行。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM