2011-10-19 39 views
7

tôi cần phải thay đổi sau địa chỉ của trang web của tôi (.): http://mysite.com/do.php?id=123.W456/789 vào http://mysite.com/123.W456/789không thể thoát khỏi dấu chấm vào mã mod_rewrite tôi

tôi đã gần như đã thành công trong mục đích cao quý này với sau tập tin .htaccess

DirectoryIndex mysite.php

RewriteEngine On RewriteRule ^([A-Za-z0-9\/.]+)?$ mysite.php?id=$1 [L]

nơi . là một quy tắc ứng . (dot) nhân vật

nó đi mát mẻ với ví dụ chuỗi url http://mysite.com/123W456/789 (nghĩa là viết lại nó để http://mysite.com/do.php?id=123W456/789)

nhưng KHÔNG viết lại chuỗi url với dot nhân vật - http://mysite.com/123.W456/789

ai cũng có thể giúp đỡ?

Trả lời

4

Chúng tôi sử dụng \. để thoát ký tự dấu chấm trong tệp htaccess, chứ không phải thực thể HTML cho nó. Sử dụng thực thể HTML sẽ làm cho nó nghĩ rằng bạn đang cho phép các ký tự &, #; thay vì ký tự ..

+0

không, nó không hoạt động với '\ .' – drdarwin

+0

vì nó tôi đã chèn mã html – drdarwin

+2

Sau đó, bạn có điều gì đó sai, hãy thử kiểm tra nhật ký lỗi Apache của bạn. – animuson

Các vấn đề liên quan