سؤال

أنا أستخدم 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 على جهازك ضيف آلة.قد يكون ذلك واضحًا لأي شخص آخر، لكنني أهدرت تغيير الإعدادات على مضيفي ولم أتمكن من معرفة سبب عدم نجاحه.

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى wordpress.stackexchange
scroll top