我是php的初学者,主要是htaccess部分。它非常令人困惑。
所以我有这个文件: -
www.domain.com/profile.php?username=my_username
如何仅使用以下方式使上述内容可访问: -
wwww.domain.com/my_username
任何类型的指示都会有所帮助
我试过的东西: -
RewriteEngine on
RewriteRule ^/([0-9]+)$ /profile.php?username=$1
答案 0 :(得分:1)
您可以在站点根目录中使用这些规则.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]
答案 1 :(得分:0)
你可以通过.htaccess实现这个目标
Options +FollowSymLinks
RewriteEngine On
RewriteCond %{SCRIPT_FILENAME} !-d
RewriteCond %{SCRIPT_FILENAME} !-f
RewriteRule ^/(\d+)*$ ./profile.php?username=$1
答案 2 :(得分:0)
.htaccess文件必须由apache授予修改/覆盖设置的权限,具体取决于您的主机默认情况下可能未启用。
正如其他人提到的那样.htaccess不是PHP的一部分,它是一个告诉apache如何处理某些请求的文件,以及允许访问服务器的哪些部分以及其他功能。
您可以使用rewritecond实现所需的结果,只需确保启用了重写引擎。
以下是有关.htaccess https://code.tutsplus.com/tutorials/the-ultimate-guide-to-htaccess-files--net-4757
的更多信息