Rewrite و htaccess: الاختلافات والملاحظات عند الانتقال من NGINX و Apache إلى ServBay
معلومات الخلفية
إعادة الكتابة، والمعروفة أيضًا بإعادة كتابة URL، أو إعادة كتابة URL أو الشبه ثابتة، هي تقنية إعادة كتابة URL الديناميكية. تُستخدم لإعادة كتابة عنوان URL المطلوب من قبل المستخدم إلى عنوان URL آخر لتحقيق هيكل URL أكثر ودية، وتحسين فعالية تحسين محركات البحث، أو تبسيط مسارات URL المعقدة. تُستخدم هذه التقنية على نطاق واسع في تطوير الويب ويمكنها إخفاء مسار الملف الحقيقي، وتحقيق تطبيع URL، وتعزيز أمان الموقع وقابلية الصيانة. من خلال استخدام إعادة كتابة URL، يمكن للمطورين إنشاء عناوين URL أكثر قابلية للقراءة والتذكر، مما يحسن تجربة المستخدم وكفاءة فهرسة محركات البحث.
خادم الويب المدمج في ServBay هو Caddy، ويشتهر بكونه سهل التكوين وبميزة HTTPS التلقائية. قامت ServBay بتهيئة قواعد إعادة الكتابة مسبقًا، لذا عادةً لا يحتاج المستخدمون إلى تهيئة إضافية لقواعد إعادة الكتابة. بالنسبة لمعظم إطارات عمل PHP وأنظمة إدارة المحتوى، فإن ServBay جاهز للاستخدام مباشرةً دون أي تكوين إضافي. ومع ذلك، بالنسبة للمستخدمين الذين ينتقلون من NGINX و Apache إلى Caddy، من المهم فهم بعض الفروقات والملاحظات. ستغطي هذه المقالة هذه النقاط بالتفصيل.
ملاحظة هامة
خادم ServBay قد قام بتكوين قواعد إعادة الكتابة مسبقًا، لذا عادةً لا يحتاج المستخدمون إلى القيام بأي تكوين إضافي. بالنسبة لمعظم إطارات عمل PHP وأنظمة إدارة المحتوى مثل WordPress، Laravel، Symfony، فإن ServBay جاهز للاستخدام مباشرةً دون تكوين إضافي لقواعد إعادة الكتابة.
لمزيد من المعلومات حول الانتقال، يرجى الاطلاع على:
قواعد إعادة الكتابة الجاهزة للاستخدام
تم تهيئة قواعد إعادة الكتابة في خادم Caddy من ServBay مسبقًا، لذا عادةً لا يحتاج المستخدمون إلى القيام بأي تكوين إضافي. بالنسبة لمعظم إطارات عمل PHP وأنظمة إدارة المحتوى مثل WordPress، Laravel، Symfony، فإن ServBay جاهز للاستخدام مباشرةً دون تكوين إضافي لقواعد إعادة الكتابة. إذا كنت من المستخدمين الذين ينتقلون من NGINX أو Apache، يرجى المتابعة لقراءة الفروقات والملاحظات حول قواعد إعادة الكتابة.
مقدمة إلى قواعد إعادة الكتابة
تستخدم قواعد إعادة الكتابة لإعادة توجيه عناوين URL المطلوبة إلى عنوان URL آخر، وغالباً ما تستخدم لأغراض تحسين محركات البحث وتحسين عناوين URL والتحكم في الوصول. تختلف طرق تكوين قواعد إعادة الكتابة باختلاف خوادم الويب.
Apache و htaccess
يستخدم 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 إلى ServBay
قواعد إعادة الكتابة:
- يتم تكوين قواعد إعادة الكتابة في Apache في ملف
.htaccess
، بينما يتم تكوينها في Caddy في ملفCaddyfile
. - تحويل قواعد إعادة الكتابة من Apache إلى قواعد إعادة الكتابة في Caddy.
- يتم تكوين قواعد إعادة الكتابة في Apache في ملف
هيكل الدليل:
- يمكن وضع ملف
.htaccess
في أي دليل في Apache، بينما يجب وضع قواعد إعادة الكتابة في Caddy في ملفCaddyfile
.
- يمكن وضع ملف
الوحدات والتوجيهات:
- لدى Apache العديد من الوحدات والتوجيهات، بينما يمتلك Caddy وظائف مماثلة ولكن بطريقة تكوين مختلفة. يجب التحويل استناداً إلى وثائق Caddy.
الانتقال من NGINX إلى Caddy
يرجى الاطلاع على الوثيقة كيفية نقل موقع NGINX إلى ServBay
قواعد إعادة الكتابة:
- يتم تكوين قواعد إعادة الكتابة في NGINX في ملف
nginx.conf
أو ملف تكوين الموقع، بينما يتم تكوينها في Caddy في ملفCaddyfile
. - تحويل قواعد إعادة الكتابة من NGINX إلى قواعد إعادة الكتابة في Caddy.
- يتم تكوين قواعد إعادة الكتابة في NGINX في ملف
هيكل ملف التكوين:
- يحتوي NGINX على هيكل ملف تكوين معقد، بينما يكون ملف
Caddyfile
الخاص بـ Caddy بسيطاً وسهل القراءة.
- يحتوي NGINX على هيكل ملف تكوين معقد، بينما يكون ملف
الوحدات والتوجيهات:
- لدى NGINX العديد من الوحدات والتوجيهات، بينما يمتلك Caddy وظائف مماثلة ولكن بطريقة تكوين مختلفة. يجب التحويل استناداً إلى وثائق Caddy.
الاستنتاج
عند الانتقال من Apache و NGINX إلى Caddy، من المهم ملاحظة الفروقات في طرق تكوين قواعد إعادة الكتابة وهيكل ملفات التكوين. صيغة ملف التكوين في Caddy بسيطة وسهلة القراءة، وقد تم تكوين قواعد إعادة الكتابة مسبقًا عادةً لذا لا يحتاج المستخدمون إلى القيام بتكوين إضافي. نأمل أن تكون هذه المقالة قد أفادتكم خلال عملية الانتقال.