id
如果 an 的外观与 a 的view
外观(在您的示例中register
是 aview
和jobs
is an )相比没有任何区别id=2
,那么您必须单独执行一个或另一个:
要“自动化”视图,您可以尝试这样做:
RewriteEngine On
# all id's here:
RewriteRule ^jobs$ index.php?id=2 [L]
RewriteRule ^something-else$ index.php?id=3 [L]
RewriteRule ^another$ index.php?id=4 [L]
# this will do all views
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?view=$1 [L]
编辑:如果您需要通过一组外部别名进行这些映射,您需要查看RewriteMap
指令。您需要访问服务器或虚拟主机配置才能设置地图,但您的规则可以保留在 htaccess 文件中。
假设您有一个名为“joomla_maps.txt”的文本文件,如下所示:
jobs id=2
another id=3
sign-in view=sign-in
register view=register
ETC...
RewriteMap
您可以通过在(在 vhost/server 配置中)设置它来使用该映射
RewriteMap joomla txt:/path/to/joomla_maps.txt
稍后在您的 htaccess 中:
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?${joomla:$1} [L]
查看RewriteMap
文档以获取其他类型映射的一些示例,包括执行脚本或使用 dbm 哈希映射。