.htaccess 关于 xampp 2 问题

Posted

技术标签:

【中文标题】.htaccess 关于 xampp 2 问题【英文标题】:.htaccess on xampp 2 problems 【发布时间】:2017-09-27 05:30:21 【问题描述】:

config.http 文件

Alias /bitnami/ "/opt/lampp/apache2/htdocs/"
Alias /bitnami "/opt/lampp/apache2/htdocs"

<Directory "/opt/lampp/apache2/htdocs">
    Options Indexes FollowSymLinks
    AllowOverride All
    Order allow,deny
    Allow from all
</Directory>

我的 .htaccess 代码

# Handle directory access

# Custom 404 File not Found Page
ErrorDocument 404 /templates/replace404.php

# Prevent file listing from the unscruplous
IndexIgnore *

# Rewrite for process.php
#RewriteRule ^do/([0-9a-zA-Z]+) process.php?opt=$1 [NC, L]

# Rewrite for article
# RewriteRule ^article/([0-9]+)/(09a-zA-Z_-)+) article.php?id=$1&title=$2 [NC, L]

好吧,第一个问题是它没有按预期抛出 replace404.php 页面,而是抛出标准 404 消息?该页面存在等,所以不知道为什么会这样。

其次是 process.php 的重写规则,如果我取消注释,那么当我尝试访问该站点时它会引发 500 错误????

【问题讨论】:

【参考方案1】:

对于这部分ErrorDocument 404 /templates/replace404.php,您必须检查文件的绝对路径。

对于第二部分,在开始重写条件和规则之前先写RewriteEngine On

RewriteRule ^do/([0-9a-zA-Z]+) process.php?opt=$1 [NC, L]
                                                      ^ this is the reason for 500

改为使用下面

RewriteRule ^do/([0-9a-zA-Z]+) process.php?opt=$1 [NC,L]

【讨论】:

感谢您的帮助。修复了 500 错误,是的,现在在 replace404.php 上表现得很奇怪。它被抛出但没有内容,收到错误 404 系统消息? 很可能你有路径错误或错误,因为你的语法是正确的尝试用完整的主机名,如http://foo.example.com/templates/replace404.php

以上是关于.htaccess 关于 xampp 2 问题的主要内容,如果未能解决你的问题,请参考以下文章

.htaccess 没有被使用 XAMPP 读取

C:/xampp/htdocs/.htaccess: RewriteRule: 错误标志分隔符 - XAMPP/Windows

xampp 上 .htaccess 文件的奇怪行为

XAMPP 本地服务器上的 Htaccess 用于测试

将网站导入 xampp:htaccess 更改

将网站导入 xampp:htaccess 更改