要做到这一点:
原始网址 - > localhost/viewprofile.php
重写网址 - > localhost/viewprofile/
我使用了此代码。
# Apache Rewrite Rules
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine On
RewriteBase /
# Add trailing slash to url
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_URI} !(\.[a-zA-Z0-9]{1,5}|/|#(.*))$
RewriteRule ^(.*)$ $1/ [R=301,L]
# Remove .php-extension from url
RewriteCond %{REQUEST_FILENAME} !-d
RewriteCond %{REQUEST_FILENAME}\.php -f
RewriteRule ^([^\.]+)/$ $1.php
# End of Apache Rewrite Rules
</IfModule>
现在我这样做了
原始网址 - &gt; localhost/viewprofile.php?user_id = 1
重写网址 - &gt; localhost/1/
RewriteEngine On
RewriteRule ^([a-zA-Z0-9_-]+)$ viewprofile.php?user_id=$1
RewriteRule ^([a-zA-Z0-9_-]+)/$ viewprofile.php?user_id=$1
但不幸的是我想要这样做
原始网址 - &gt; localhost/viewprofile.php?user_id = 1
重写网址 - &gt; localhost/viewprofile/1/
以及
原始网址 - &gt; localhost/viewprofile.php?username=sean
重写网址 - &gt; localhost/viewprofile/sean/
我有两个Original URLs
,我想分别将它们重写为相应的ReWrite URL
,如上所述。
任何解决方案?
答案 0 :(得分:1)
您可以匹配第一个数字(仅限)和另一个(例如)字母数字
ActiveRecord::Base