لقد سمعت عن استخدام إعادة توجيه 301، لكنني أواجه صعوبة في تحديد موقع دليل تكوين Nginx على الخادم الخاص بي. أي حلول بديلة أو إرشادات ستكون موضع تقدير كبير.
شكراً لك @Lilly. أود أن أعرف ما إذا كانت الروابط الدائمة يمكنها التعامل مع تغيير كامل للنطاق أيضًا. للتوضيح فقط، نحن ننتقل من abc.domain1.com إلى xyz.domain2.com. يتغير كل من النطاق الفرعي والنطاق. لقد كنت أقرأ هذا النقاش وأردت التأكيد:
هل تحاول إعادة توجيه موضوع Discourse موجود إلى عنوان URL خارجي؟ هذا ليس ما تم تصميم الروابط الدائمة للقيام به. أنا متأكد من أنك لا تستطيع إعادة توجيه أي شيء تحت /t.
إذا كنت تريد أن يتم إعادة توجيه الأشخاص الذين يزورون https://hoidap.cheng.vn/t/cach-cua-do-nu-bao-binh-don-gian/70 2 إلى https://cunghoangdao.info، فأعتقد أن أفضل ما يمكنك فعله هو تعديل المنشور وإخبار الأشخاص بالنقر فوق الرابط للانتقال إلى الموقع الآخر.
شكراً @RGJ على التوجيه. لقد قمت للتو بإعداد نطاق مباشر من مزود اسم النطاق الخاص بنا، وقد نجح ذلك. الروابط القديمة تعيد التوجيه إلى الروابط الجديدة بشكل صحيح.
هذه هي الطريقة التي أستخدمها لإعادة توجيه كاملة بعد تغيير النطاق، لقد مزجت بعض الحلول المقدمة في هذا المنتدى.
في ملف app.yml، في النهاية أضيف الكتل after_web_config و after_ssl:
hooks:
after_code:
- exec:
cd: $home/plugins
cmd:
- git clone https://github.com/discourse/docker_manager.git
after_web_config:
- replace:
filename: /etc/nginx/nginx.conf
from: /sendfile.+on;/
to: |
server_names_hash_bucket_size 64;
sendfile on;
- file:
path: /etc/nginx/conf.d/discourse_redirect_1.conf
contents: |
server {
listen 80;
listen 443 ssl;
server_name old-domain.com;
return 301 $scheme://new-domain.com$request_uri;
}
after_ssl:
- replace:
filename: "/etc/runit/1.d/letsencrypt"
from: /--keylength/
to: " -d old-domain.com --keylength"
## أي أوامر مخصصة لتشغيلها بعد البناء
run:
- exec: echo "Beginning of custom commands"
## إذا كنت ترغب في تعيين عنوان البريد الإلكتروني 'من' لتسجيلك الأول، قم بإلغاء التعليق وتغييره:
## بعد الحصول على البريد الإلكتروني الأول للتسجيل، أعد التعليق على السطر. يحتاج فقط إلى التشغيل مرة واحدة.
##- exec: rails r "SiteSetting.notification_email='info@unconfigured.discourse.org'"
- exec: echo "End of custom commands"
سيؤدي هذا إلى إعادة توجيه الروابط القديمة إلى المنتديات الجديدة، دون مشكلة SSL.