سؤال

لدي مجال .ne.ro (مسجل في رومانيا) حيث يمكن للزوار الدخول مع أو بدون "www":

http://mydomain.ne.ro
http://www.mydomain.ne.ro

اريد إعادة التوجيه http://123.mydomain.ne.ro إلى http://mydomain.ne.ro?id=123. إذا أدخل الزائر مع "www | mail | ftp" يجب أن يعامل على أنه غير معلمة (من الواضح).

حاولت htaccess sublowain redirct مع معلمة URL الأخيرة لكن لم تنجح.

الكود الحالي:

# edited on 05/April/2011 as suggested:
RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.mydomain\.ne\.ro$
RewriteCond %{HTTP_HOST} ^(.*)\.mydomain\.ne\.ro$
RewriteRule ^$ /index.php?id=%1 [R,L]


استضافها على أ خطة عمل المضيفة (Linux) ومسجل في Nic.ro, ، فقط إذا طلب.

هل كانت مفيدة؟

المحلول

بعد العديد من الكود المقترح (شكرا supersuphot) والكثير من الأبحاث أخيرا وجدت إجابة.

أولا أضفت النطاق الفرعي * تحت mydomain.ne.ro, ، أشار إلى مجلد/مسار المجال:

Create subdomain *, hostgator shared account

ثم قمت بتحميل ملف .htaccess مع الكود التالي:

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.mydomain.ne.ro
RewriteCond %{HTTP_HOST} ^(.+).mydomain.ne.ro
RewriteRule ^([^/]*)$ http://mydomain.ne.ro/?id=%1 [P,L]

هذا يعمل أيضًا:

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.mydomain\.ne\.ro$
RewriteCond %{HTTP_HOST} ^(.*)\.mydomain\.ne\.ro$
RewriteRule ^$ /index.php?id=%1 [P,L]

أهم شيء هو ص في حين أن ص في السطر الأخير ، للحفاظ على النطاق الفرعي الأصلي. يفحص هذا الجواب إلى السؤال ذي الصلة.

نصائح أخرى

RewriteEngine on
RewriteCond %{HTTP_HOST} !^www\.mydomain\.ne\.ro$
RewriteCond %{HTTP_HOST} ^(.*)\.mydomain\.ne\.ro$
RewriteRule ^$ http://mydomain.ne.ro?id=%1 [R,L]

واو Quantme!

أنا أبحث عن هذا الرمز منذ يومين ، إيه أخيرًا ...

الرمز الأول الخاص بك مثالي بالنسبة لي

RewriteRule ^([^/]*)$ http://mydomain.ne.ro/?id=%1 [P,L]

كما يمكنك التغيير مع هذا (للأحرف الكبيرة أو الصغيرة)

RewriteRule ^(.*)$ http://mydomain.ne.ro/?id=%1 [P,L]

شكرا جزيلا Quantme

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top