我是一个php的初学者,主要是htaccess部分。这是相当令人困惑的。所以我有这个文件:
www.domain.com/profile.php?username=my_username
我如何才能使上述访问只使用:-
wwww.domain.com/my_username
任何一种方向都有帮助我试过的东西:
RewriteEngine on RewriteRule ^/([0-9]+)$ /profile.php?username=$1
uyto3xhc1#
您可以在站点root .htaccess中使用以下规则集:
Options +FollowSymLinks RewriteEngine On RewriteBase /foldername/ RewriteCond %{THE_REQUEST} /profile\.php\?username=([^\s&]+) [NC] RewriteRule ^ %1? [R=301,L,NE] RewriteCond %{SCRIPT_FILENAME} !-d RewriteCond %{SCRIPT_FILENAME} !-f RewriteRule ^([\w-]+)/?$ profile.php?username=$1 [L,QSA]
cdmah0mi2#
你可以通过.htaccess实现这一点
Options +FollowSymLinks RewriteEngine On RewriteCond %{SCRIPT_FILENAME} !-d RewriteCond %{SCRIPT_FILENAME} !-f RewriteRule ^/(\d+)*$ ./profile.php?username=$1
cyvaqqii3#
.htaccess文件必须由apache授予修改/覆盖设置的权限,这取决于您的主机,默认情况下可能不会启用。正如其他人所提到的.htaccess不是PHP的一部分,它是一个文件,告诉Apache如何处理某些请求,以及服务器的哪些部分允许访问沿着其他功能。你可以通过rewritecond实现你想要的结果,只要确保重写引擎被启用。以下是有关.htaccess https://code.tutsplus.com/tutorials/the-ultimate-guide-to-htaccess-files--net-4757的更多信息
3条答案
按热度按时间uyto3xhc1#
您可以在站点root .htaccess中使用以下规则集:
cdmah0mi2#
你可以通过.htaccess实现这一点
cyvaqqii3#
.htaccess文件必须由apache授予修改/覆盖设置的权限,这取决于您的主机,默认情况下可能不会启用。
正如其他人所提到的.htaccess不是PHP的一部分,它是一个文件,告诉Apache如何处理某些请求,以及服务器的哪些部分允许访问沿着其他功能。
你可以通过rewritecond实现你想要的结果,只要确保重写引擎被启用。
以下是有关.htaccess https://code.tutsplus.com/tutorials/the-ultimate-guide-to-htaccess-files--net-4757的更多信息