Php 非常基本的htaccess漂亮的URL
我无法将硬编码的URL重定向到漂亮的URL 我想访问以下url:Php 非常基本的htaccess漂亮的URL,php,apache,.htaccess,mod-rewrite,Php,Apache,.htaccess,Mod Rewrite,我无法将硬编码的URL重定向到漂亮的URL 我想访问以下url: mysite.com/index.php?page=links 通过导航到: mysite.com/links/ 我已经阅读了很多关于这个主题的其他问题,但是它们都与通过url传递的动态数据有关。我只想要一个简单的htaccess重写规则,它只会影响这个特定的url,而不会影响其他内容 我试过很多东西,但都不管用,每次都是404 例如: RewriteEngine On RewriteRule ^links/ index.ph
mysite.com/index.php?page=links
通过导航到:
mysite.com/links/
我已经阅读了很多关于这个主题的其他问题,但是它们都与通过url传递的动态数据有关。我只想要一个简单的htaccess重写规则,它只会影响这个特定的url,而不会影响其他内容
我试过很多东西,但都不管用,每次都是404
例如:
RewriteEngine On
RewriteRule ^links/ index.php?page=links
谢谢你的帮助
编辑-对提供的建议答案作出反应。这完全不是我想要做的。我没有试图将一个页面重定向到另一个页面,我只是想在浏览器中重写URL。我找到了解决方案。apache2.conf不允许覆盖,因此我添加了以下内容
<Directory /var/www/html/public/>
Options Indexes FollowSysmLinks
AllowOverride All
Require all granted
</Directory>
选项索引和链接
允许超越所有
要求所有授权
这安全吗?我找到了解决办法。apache2.conf不允许覆盖,因此我添加了以下内容
<Directory /var/www/html/public/>
Options Indexes FollowSysmLinks
AllowOverride All
Require all granted
</Directory>
选项索引和链接
允许超越所有
要求所有授权
这安全吗?index.php
<?php
define('BASE_URL', '/mysite.com/');
if (isset($_GET['page'])) {
echo "query string ==> $_SERVER[QUERY_STRING]" . "<br />";
} else {
echo "Not query 'page'" . "<br />";
}
echo "url ==> $_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]" . "<br />";
?>
<a href="<?php echo BASE_URL; ?>">index</a><br/>
<a href="<?php echo BASE_URL; ?>1">1</a><br/>
<a href="<?php echo BASE_URL; ?>2">2</a><br/>
<a href="index.php?page=3">3</a><br/>
index.php
<?php
define('BASE_URL', '/mysite.com/');
if (isset($_GET['page'])) {
echo "query string ==> $_SERVER[QUERY_STRING]" . "<br />";
} else {
echo "Not query 'page'" . "<br />";
}
echo "url ==> $_SERVER[HTTP_HOST]$_SERVER[REQUEST_URI]" . "<br />";
?>
<a href="<?php echo BASE_URL; ?>">index</a><br/>
<a href="<?php echo BASE_URL; ?>1">1</a><br/>
<a href="<?php echo BASE_URL; ?>2">2</a><br/>
<a href="index.php?page=3">3</a><br/>
您是否已确认启用了
.htaccess
、mod_rewrite和FollowSymLinks
?在.htaccess
中是否有其他指令?任何其他.htaccess
文件?启用Hi、yes mod_rewrite和FollowSymLinks的可能重复项。没有其他.htaccess文件。只有另一个指令是ErrorDocument 404/index.php?page=error&action=404
,它工作正常。您是否确认启用了.htaccess
、mod_rewrite和FollowSymLinks
?在.htaccess
中是否有其他指令?任何其他.htaccess
文件?启用Hi、yes mod_rewrite和FollowSymLinks的可能重复项。没有其他.htaccess文件。只有另一个指令是errordocument404/index.php?page=error&action=404
,它工作正常。