اباتشي على مساعدة تكوين الدليل الظاهري ويندوز
-
06-07-2019 - |
سؤال
أقوم بتشغيل Apache على نظام التشغيل Windows XP عبر Xampplite، ويمكنني الاستعانة بالمساعدة في تكوين الدليل الظاهري الخاص بي.إليك ما آمل أن أفعله في صندوق التطوير الخاص بي:
- أريد أن تعيش ملفات المصدر الخاصة بي خارج xampp htdocs dir
- يمكنني الوصول إلى المشروع على جهازي المحلي http://myproject
- يمكن للآخرين على شبكتي المحلية الوصول إلى المشروع على my.ip.address/myproject
- احتفظ بالمضيف المحلي يشير إلى مجلد htdocs الخاص بـ xampp حتى أتمكن من إضافة مشاريع أخرى بسهولة.
لقد عملت على 1 و 2 من خلال تحرير ملف Windows hosts وإضافة دليل ظاهري في ملف apache\conf\extra\httpd-vhosts.conf الخاص بـ xampp.لا أرى على الفور كيفية القيام بالثلاثة دون العبث بالرابعة.
المحلول
اكتشفه:يستخدم الاسم المستعار بالنسبة للرقم 3، بدلاً من VirtualHost، وبالتالي:
Alias /myproject "C:/path/to/my/project"
<Directory "C:/path/to/my/project">
Options Indexes FollowSymLinks MultiViews ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
نصائح أخرى
لإنجاز قائمة احتياجاتك.
1) إنشاء الدليل:
mkdir c:\xampp\sites\myproject
2) قم بتحرير c:\windows\system32\drivers\etc\hosts بحيث يحتوي على هذا السطر:
127.0.0.1 مشروعي
وأضف ما يلي إلى c:\xampp\Apache\conf\extra\httpd-vhosts.conf:
NameVirtualHost myproject:80 <VirtualHost myproject:80> DocumentRoot c:/xampp/sites/myproject Options Indexes FollowSymLinks Includes ExecCGI AllowOverride All Order allow,deny Allow from all </Directory>
3) أضف الأسطر التالية إلى نهاية c:\xampp\Apache\conf\httpd.conf:
Alias /myproject/ "/xampp/sites/myproject/" <Directory "/xampp/sites/myproject"> AllowOverride None Options None Order allow,deny Allow from all </Directory>
4) اترك DocumentRoot والدليل وما إلى ذلك في c:\xampp\Apache\conf\httpd.conf وحده لإنجاز هذا.كمرجع هذه السطور ستكون:
DocumentRoot "/xampp/htdocs" <Directory /> Options FollowSymLinks AllowOverride None Order deny,allow Deny from all </Directory> <Directory "/xampp/htdocs"> Options Indexes FollowSymLinks Includes ExecCGI AllowOverride All Order allow,deny Allow from all </Directory>
تمكين أولا:LoadModule alias_module Modules/mod_alias.so
<IfModule alias_module>
Alias /ddd "D:/prj/customer/www"
<Directory "D:/prj/customer/www">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride all
Order allow,deny
Allow from all
</Directory>
</IfModule>
تم اختباره على WAMP 2.2 وعمله:http://المضيف المحلي/ddd
في httpd.conf أضف الأسطر التالية، مع إجراء ما يلزم من تعديل:
<IfModule alias_module>
Alias /angular-phonecat "C:/DEV/git-workspace/angular-phonecat"
</IfModule>
<Directory "C:/DEV/git-workspace/angular-phonecat">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride all
Order allow,deny
Allow from all
Require all granted
</Directory>
لقد نجح هذا بشكل رائع على تثبيت XAMPP (Windows) بعد إعادة تشغيل خادم Apache.اضطررت إلى إضافة "يتطلب منح كل شيء"، ولكن بخلاف ذلك فهو يشبه إلى حد كبير الإجابات المذكورة أعلاه.
NameVirtualHost myProject: 80 <VirtualHost myProject: 80>
< /الدليل>
لا بد وأن:
NameVirtualHost myProject: 80 <VirtualHost myProject: 80>
< /المضيف الافتراضي>
تحية ؛)
حل المشكلة.كان يفتقد علامة الدليل.
NameVirtualHost myproject:80
<VirtualHost myproject:80>
DocumentRoot "D:/Solution"
<Directory "D:/Solution">
Options Indexes FollowSymLinks Includes ExecCGI
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
تم حل المشكلة بأبسط طريقة وأقل خطوات لا تحتاج إلى إنشاء مضيف افتراضي ، فقط قم بتغيير موقع الدليل المستهدف.
إليك ما قمت به من أجل التكوين:لقد قمت بذلك عن طريق تحرير C: /Xampp/Apache/Conf/httpd.conf تغيير الملفات التي قمت بها في ملف httpd.conf أضاف هذا البرنامج النصي مباشرة بعد scriptalias/cgi-bin/"c:/xampp/apache) /"
alias /projectxyz "C: /PathTomyProject" فهارس خيارات متابعة MultiViews Multiviews execcgi السماح لكل ترتيب ، رفض السماح من الجميع
Pathtomyproject = المسار الكامل للمشروع
وتغيير عنوان URL الخاص بـ Document Root DocumentRoot "C:/PathTomyProject"
أعد تشغيل خادم Apache الآن عن طريق إيقاف الخادم.لقد أوقفت خادم Apache، ثم قمت بتشغيل خادم Apache مرة أخرى.
مصدر: http://bytespedia.blogspot.com/2013/12/creating-virtual-directory-in-apache.html