الروابط الدائمة لا تعمل مع Vagrant
-
09-12-2019 - |
سؤال
أنا أستخدم Vagrant لإنشاء جهاز افتراضي صغير لتطوير Wordpress.عندما أحدد الروابط الدائمة (الاسم البريدي)، لا يتم تحميل الصفحة من المقالة.ومع ذلك، عندما أقوم بتحديد الرابط القياسي (أي معرف الصفحة) فإن كل شيء يعمل بشكل جيد.لقد استخدمت خدمة PuPHPet لإنشاء جهاز افتراضي.
يمكن العثور على الإعدادات الخاصة بي هنا
أنا أستخدم WordPress 3.9.1 و Apache2 لقد قمت بتمكين Mod_Rewrite تنفذ:
a2enmod rewrite
وملف .htaccess الخاص بي من Wordpress هو كما يلي:
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /svisa/
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /svisa/index.php [L]
</IfModule>
# END WordPress
لديه الأذونات والملكية التالية:
-rw-rw-rw- 1 vagrant www-data 248 May 30 14:52 .htaccess
ملف المضيف الظاهري الخاص بي للموقع (/var/www/svisa/
) يمكن ايجاده هنا.
من جهاز الكمبيوتر المضيف الخاص بي، أتصفح الموقع عبر العنوان: http://wpdev-vm/svisa/
أين wpdev-vm
هو اسم جهاز vm.
هل يعرف أحد ما الذي أفتقده لجعل الروابط الدائمة تعمل؟
المحلول
لقد قمت بحل المشكلة بنفسي.
في تكوين Apache الافتراضي، ضمن /etc/apache2/sites-enabled
, ، حيث يتم استدعاء الألغام 15-default.conf
تم الإعلان عن ذلك تحت جذر المستند:
<Directory "/var/www">
Options Indexes FollowSymLinks MultiViews
AllowOverride None
Order allow,deny
Allow from all
</Directory>
كان علي أن أتغير AllowOverride None
ل AllowOverride All
.وبذلك ستحصل على ما يلي:
<Directory "/var/www">
Options Indexes FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
Allow from all
</Directory>
وبعد ذلك، بدأت الروابط الدائمة في العمل.
نصائح أخرى
توجد معلومات كافية على الويب حول كيفية تشغيل ملفات .htaccess مع Apache2.ولكن على وجه التحديد مع المتشرد, ، فأنت بحاجة إلى التأكد من تنفيذ الإعدادات المطلوبة في Apache على جهازك ضيف آلة.قد يكون ذلك واضحًا لأي شخص آخر، لكنني أهدرت تغيير الإعدادات على مضيفي ولم أتمكن من معرفة سبب عدم نجاحه.