Как создать дополнительный RewriteCond в Apache

У меня есть touble для моего .htaccess config., это часть config:

RewriteCond %{QUERY_STRING} ^token=(.*)
RewriteRule ^aplikasi/(.*).asp aplikasi.php?halaman=$1&token=%1

и получим, что config:

http://{domain}/aplikasi/{$1}.asp?token={%1}

если я использую эту ссылку:

http://{domain}/aplikasi/{$1}.asp

У меня ошибка 404, я задаюсь вопросом: как это сделать с помощью необязательного параметра prameter (я хочу "? токен = {% 1}" является необязательным)

Ответ 1

У вас есть две возможности.

Если вы хотите разрешить либо пустую строку запроса, либо только token

RewriteCond %{QUERY_STRING} ^$ [OR]
RewriteCond %{QUERY_STRING} ^token=([^&\s]+)$ [NC]
RewriteRule ^aplikasi/(.+)\.asp$ /aplikasi.php?halaman=$1&token=%1 [L]

Если вы хотите разрешить любую строку запроса

RewriteRule ^aplikasi/(.+)\.asp$ /aplikasi.php?halaman=$1 [L,QSA]