我正在尝试用.htaccess
做四件事首先是从所有文件中删除php扩展
所以
www.mywebsite.com/home is written www.mywebsite.com/home.php
我想更改为错误页面,因此如果向www.mywebsite.com/adakadabra发出请求,并且有像adakabra.php这样的页面,则会自定义使用自定义404.php。
第三,我想要徒劳的网址,以便用户可以拥有像
这样的个人资料链接www.mywebsite.com/Joe
我有一个profile.php,我使用get请求获取用户名,因此重写将来自 www.mywebsite.com/joe至www.mywebsite.com/profile.php?username=joe
最后但并非最不重要
我想要一个像www.mywebsite.com/p/123453
这样的网页重写为 www.mywebsite.com/p.php?photo=123453
我的网络服务器上有p.php页面。
答案 0 :(得分:0)
这可以使用/.htaccess中的3组规则:
ErrorDocument 404 /404.php
RewriteEngine On
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^p/([0-9]+)$ /p.php?photo=$1 [QSA,L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(Joe|Mao|Napoleon|Gandi)$ /profile.php?username=$1 [QSA,L,NC]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^([^.]+)$ /$1.php [QSA,L]
这是如何运作的: