আমি ফেডোরা ১৩ এ একটি ল্যাম্প সার্ভার চালিয়ে যাচ্ছি যা ঠিকঠাক কাজ করছে; তবে আমি আমার বর্তমান সাইটের ডকরুট ফোল্ডারে একটি ".htaccess" ফাইল যুক্ত করেছি যা সম্পূর্ণ উপেক্ষা করা হচ্ছে।
আমি এটি সহ আরও অর্ধ ডজন বিভিন্ন পরীক্ষার চেষ্টা করেছি:
RewriteEngine on
RewriteBase /
RewriteRule ^.*$ index.php
তবে চিত্র এবং অন্যান্য সমস্ত পৃষ্ঠাগুলি সূক্ষ্ম লোড করে এবং অস্তিত্বহীন ফাইলগুলি এখনও 404। আমি এটিও চেষ্টা করেছি:
order deny,allow
deny from all
তবে প্রতিটি পৃষ্ঠা এখনও ঠিক জরিমানা করে। আবার .htaccess ফাইলটি সহজেই 100% উপেক্ষা করা হয়।
আমরা আমাদের ভার্চুয়ালস্টস্ট রেকর্ডগুলি /etc/httpd/conf.d/virtual.conf এ রেখেছি। দেখে মনে হচ্ছে:
NameVirtualHost *
<VirtualHost *>
ServerName intranet
DocumentRoot /var/www/default
<Directory "/var/www/default">
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost *>
ServerName ourwebsite.com
DocumentRoot /var/www/html/ourwebsite.com/docroot
<Directory "/var/www/html/ourwebsite.com/docroot">
Options FollowSymLinks
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
আমাদের সার্ভারটি .htaccess
ফাইলটিকে পুরোপুরি অজানা করার কারণ আর কী হতে পারে ??
সম্পাদনা:
আমার পরিবর্তনগুলি উপেক্ষা করা হচ্ছে তা আরও ভালভাবে দেখানোর জন্য আমি উপরে .htaccess ফাইলটি পরিবর্তন করেছি। নোট করুন যে আমি প্রোডাকশন সার্ভারে ঠিক একই .htaccess ফাইলটি চেষ্টা করেছি এবং এটি দুর্দান্ত কাজ করেছে।
সম্পাদনা 2:
ঠিক আছে, আমার কাছে নতুন তথ্য আছে! শুধু উদ্দেশ্যে পরীক্ষার জন্য, আমি মাধ্যমে গিয়েছিলাম এবং সাময়িকভাবে প্রতি "AllowOverride" ডিরেক্টিভের পরিবর্তিত AllowOverride All
। আমি বুঝতে পেরেছিলাম যে খুব প্রথম ডিরেক্টরি এন্ট্রি অন্য সকলকে পরাশক্তি হিসাবে দেখায়:
<Directory />
Options FollowSymLinks
AllowOverride None
</Directory>
যখন আমি এটিতে পরিবর্তন করি তখন AllowOverride All
আমার .htaccess ফাইলগুলি কার্যকর হওয়া শুরু করে। এটি AllowOverride All
আমার কনফিগারেশন ফাইলগুলির অন্য সমস্ত নির্দেশনা উপেক্ষা করা হচ্ছে!
শেষ ঘন্টা??