إعادة كتابة وإعداد htaccess: الفروقات والنقاط التي يجب الانتباه إليها عند الانتقال من NGINX وApache إلى Caddy
معلومات خلفية
إعادة الكتابة، والمعروفة أيضًا بإعادة كتابة URL أو إعادة كتابة URL الوهمية، هي تقنية لإعادة كتابة URL الديناميكي. يتم استخدامها لإعادة كتابة URL المطلوب من قبل المستخدم إلى URL آخر، لتحقيق هيكل URL أكثر ملاءمة، وزيادة فعالية SEO، أو تبسيط مسارات URL المعقدة. تُستخدم هذه التقنية على نطاق واسع في تطوير الويب، حيث يمكن أن تخفي المسارات الحقيقية للملفات، وتحقق توحيد URL، وتعزز أمان الموقع وقابليته للصيانة. من خلال إعادة الكتابة، يمكن للمطورين إنشاء URLs أكثر قابلية للقراءة وسهلة التذكر، مما يعزز تجربة المستخدم وكفاءة فهرسة محركات البحث.
دعم NGINX و Apache
يدعم ServBay كل من NGINX و Apache، يمكن للمستخدمين الرجوع إلى المقالة: كيفية إعداد خادم الويب الافتراضي
يوفر ServBay Caddy و NGINX و Apache كمخدمات ويب. لقد قام ServBay بتهيئة قواعد إعادة الكتابة بالفعل لـ Caddy و NGINX، وعادةً ما لا يحتاج المستخدم إلى تكوين قواعد إعادة كتابة إضافية. بالنسبة لمعظم أطر العمل PHP وأنظمة إدارة المحتوى، فإن ServBay جاهز للاستخدام دون الحاجة إلى إعدادات إضافية. ومع ذلك، يعد فهم بعض الفروقات والنقاط المهمة للمستخدمين الذين ينتقلون من NGINX وApache إلى Caddy أمرًا في غاية الأهمية. ستتناول هذه المقالة هذه الموضوعات بالتفصيل.
قواعد إعادة الكتابة الجاهزة للاستخدام
ملاحظة مهمة
لقد قام ServBay بتهيئة قواعد إعادة الكتابة مسبقًا، وعادةً ما لا يحتاج المستخدمون إلى إجراء أي إعدادات إضافية. بالنسبة لمعظم أطر العمل PHP وأنظمة إدارة المحتوى، مثل WordPress، Laravel، وSymfony، فإن ServBay جاهز للاستخدام، لا تحتاج إلى إعداد قواعد إعادة الكتابة الإضافية.
للحصول على مزيد من المعلومات حول الهجرات، يرجى الاطلاع على
مقدمة لقواعد إعادة الكتابة
تُستخدم قواعد إعادة الكتابة لإعادة كتابة URL المطلوب إلى URL آخر، عادةً لأغراض تحسين SEO، تجميل URL، والتحكم في الوصول. تختلف طرق تكوين قواعد إعادة الكتابة بين خوادم الويب المختلفة.
htaccess الخاصة بApache
تستخدم Apache ملف .htaccess
لتكوين قواعد إعادة الكتابة. يُوضع ملف .htaccess
عادةً في الدليل الجذر للموقع أو في دليل معين، ويؤثر على هذا الدليل وكل الأدلة الفرعية.
الاستخدام الأساسي
إليك مثال على ملف .htaccess
أساسي:
RewriteEngine On
# Redirect all requests to index.php
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php [L]
2
3
4
5
6
قواعد إعادة الكتابة الخاصة بـ NGINX
تستخدم NGINX ملف nginx.conf
أو ملف تكوين الموقع لتكوين قواعد إعادة الكتابة. تُوضع قواعد إعادة الكتابة عادةً في كتلة server
أو location
.
الاستخدام الأساسي
إليك مثال على ملف تكوين NGINX أساسي:
server {
listen 80;
server_name servbay.demo;
location / {
try_files $uri $uri/ /index.php?$query_string;
}
location ~ \.php$ {
include fastcgi_params;
fastcgi_pass unix:/Applications/ServBay/tmp/php-cgi.sock;
fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
}
}
2
3
4
5
6
7
8
9
10
11
12
13
14
قواعد إعادة الكتابة الخاصة بـ Caddy
تستخدم Caddy ملف Caddyfile
لتكوين قواعد إعادة الكتابة. صياغة ملف التكوين لـ Caddy بسيطة وسهلة القراءة.
الاستخدام الأساسي
إليك مثال على Caddyfile الأساسي:
servbay.demo {
root * /Applications/ServBay/www/demo
php_fastcgi unix//Applications/ServBay/tmp/php-cgi.sock
file_server
@notStatic {
not {
file {
try_files {path} {path}/ /index.php?{query}
}
}
}
rewrite @notStatic /index.php
}
2
3
4
5
6
7
8
9
10
11
12
13
14
15
نقاط يجب مراعاتها عند الهجرة
الانتقال من Apache إلى Caddy
يرجى الرجوع إلى الوثيقة كيفية انتقال موقع Apache إلى Caddy
قواعد إعادة الكتابة:
- تُكوَّن قواعد إعادة الكتابة الخاصة بـ Apache في ملف
.htaccess
، بينما يُكوَّن في Caddy فيCaddyfile
. - قم بتحويل قواعد إعادة الكتابة الخاصة بـ Apache إلى قواعد إعادة الكتابة الخاصة بـ Caddy.
- تُكوَّن قواعد إعادة الكتابة الخاصة بـ Apache في ملف
هيكل الدليل:
- يمكن وضع ملف
.htaccess
الخاص بـ Apache في أي دليل، بينما يجب وضع قواعد إعادة الكتابة الخاصة بـ Caddy فيCaddyfile
.
- يمكن وضع ملف
الوحدات والأوامر:
- تمتلك Apache العديد من الوحدات والأوامر، كما أن Caddy لديها وظائف مشابهة، ولكن طريقة التكوين مختلفة. تحتاج إلى التحويل وفقًا لوثائق Caddy.
الانتقال من NGINX إلى Caddy
يرجى الرجوع إلى الوثيقة كيفية انتقال موقع NGINX إلى Caddy
قواعد إعادة الكتابة:
- تُكوَّن قواعد إعادة الكتابة الخاصة بـ NGINX في ملف
nginx.conf
أو ملف تكوين الموقع، بينما تُكوَّن في Caddy فيCaddyfile
. - قم بتحويل قواعد إعادة الكتابة الخاصة بـ NGINX إلى قواعد إعادة الكتابة الخاصة بـ Caddy.
- تُكوَّن قواعد إعادة الكتابة الخاصة بـ NGINX في ملف
هيكل ملف التكوين:
- هيكل ملف التكوين لـ NGINX معقد إلى حد ما، بينما هيكل
Caddyfile
بسيط وواضح.
- هيكل ملف التكوين لـ NGINX معقد إلى حد ما، بينما هيكل
الوحدات والأوامر:
- تمتلك NGINX العديد من الوحدات والأوامر، كما أن Caddy لديها وظائف مشابهة، ولكن طريقة التكوين مختلفة. تحتاج إلى التحويل وفقًا لوثائق Caddy.
خاتمة
عند الانتقال من Apache وNGINX إلى Caddy، يجب الانتباه إلى طريقة تكوين قواعد إعادة الكتابة واختلاف هيكل ملفات التكوين. صياغة ملف التكوين لـ Caddy تتميز بالبساطة وسهولة القراءة، وقد تم ضبط قواعد إعادة الكتابة بشكل افتراضي، مما يعني أن المستخدمين بشكل عام لا يحتاجون إلى إعداد قواعد إعادة الكتابة الإضافية. نأمل أن تكون هذه المقالة مفيدة لك أثناء عملية الانتقال.