index.php ডিফল্টরূপে লোড হচ্ছে না


107

আমি সবেমাত্র সেন্টস, অ্যাপাচি এবং পিএইচপি ইনস্টল করেছি। আমি যখন আমার সাইট http://example.com/myapp/ পরিদর্শন করি তখন এটি "নিষিদ্ধ" বলে। ডিফল্টরূপে এটি index.php ফাইলটি লোড করছে না।

আমি যখন http://example.com/myapp/index.php ঘুরে দেখি , এটি ভাল কাজ করে।

কোন সমস্যা কীভাবে এই সমস্যাটি ঠিক করবেন?

উত্তর:


153

সূচি ফাইল হিসাবে index.php সনাক্ত করতে অ্যাপাচি কনফিগার করা দরকার।

এটি সম্পাদন করার সহজতম উপায় ..

  1. আপনার ওয়েব রুটে একটি .htaccess ফাইল তৈরি করুন।

  2. লাইন যুক্ত করুন ...

ডিরেক্টরি ইন্ডেক্স সূচক

বিষয়টি সম্পর্কিত একটি উত্স এখানে দেওয়া হয়েছে ...
http://www.twsc.biz/twsc_hosting_htaccess.php

সম্পাদনা: আমি ধরে নিচ্ছি অ্যাচাচি .htaccess ফাইলগুলিকে অনুমতি দেওয়ার জন্য কনফিগার করা হয়েছে। যদি তা না হয় তবে আপনাকে অ্যাপাচের কনফিগারেশন ফাইলে সেটিংসটি পরিবর্তন করতে হবে (httpd.conf)


4
এটি সম্ভবত php.conf ফাইলে থাকা উচিত যা অ্যাপাচি লোড হয়।
স্ট্যাটিকসান

আমার মনে হয় আপনি php.ini বলতে চাইছেন। নির্বিশেষে, তার অ্যাপাচি সূচী। সূচি ফাইলকে ডিরেক্টরি সূচক ফাইল হিসাবে স্বীকৃতি দিচ্ছে না। এটির হ্যান্ডলিং পিএইচপি ফাইলগুলি অন্য অ্যাপাচি কনফিগারেশন সমস্যা।
জন হিমেলমান

1
আপাচে পুনরায় চালু করতে ভুলবেন না !! আমি যেমন করেছি! : /
নাভিদ আইনাকচি

102

একটি .htaccess ফাইলে 'DirectoryIndexex.php' যুক্ত করার সময়, কাজ করতে পারে,

বিঃদ্রঃ:

সাধারণভাবে আপনার কখনও .htaccess ফাইল ব্যবহার করা উচিত নয়

এটি http://httpd.apache.org/docs/1.3/howto/htaccess.html থেকে উদ্ধৃত হয়েছে
যদিও এটি অ্যাপাচি-র একটি পুরানো সংস্করণ বোঝায়, আমি বিশ্বাস করি যে নীতিটি এখনও প্রযোজ্য।

আপনার httpd.conf- এ নিম্নলিখিতটি যুক্ত করা (যদি আপনার এটিতে অ্যাক্সেস থাকে) আরও ভাল ফর্ম হিসাবে বিবেচনা করা হয়, সার্ভারের ওভারহেডের কম কারণ হয়ে থাকে এবং ঠিক একই প্রভাব ফেলে:

<Directory /myapp>
DirectoryIndex index.php
</Directory>

4
আপনার যদি সেই ফাইলটিতে অ্যাক্সেস থাকে তবে তা সবই ঠিক আছে এবং
জঘন্য

1
তার জন্য +1। আপনার যদি httpd.conf অ্যাক্সেস না থাকে তবে এটি পছন্দসই পদ্ধতি।
ম্যাথু জনসন

আমি বিশ্বাস করি যদি আপনি এইচটিটিপিএস ব্যবহার করে থাকেন তবে এটি ডিফল্ট-এসএসএল কনফিগারেশন ফাইলটিতে যুক্ত করাও ঠিক fine
অ্যালেক্স ডব্লিউ

44

অনুমান হিসাবে আমি বলব ডিরেক্টরি সূচকটি index.html বা কিছু ভেরিয়েন্টে সেট করা আছে: চেষ্টা করুন:

DirectoryIndex index.html index.php

এটি তবুও সূচি.এইচপিএলকে সূচিপত্রের উপরে অগ্রাধিকার দেবে ((আপনার যদি কোনও রক্ষণাবেক্ষণ পৃষ্ঠার প্রয়োজন হয় তবে কার্যকর)


খনিটি দেখতে দেখতে এটিকে ভাল লাগে তবে দুর্ভাগ্যক্রমে এটি সম্পাদন করার পরিবর্তে সূচকগুলি ডাউনলোড করে চলেছে।
ওয়েবনেট 3'13

@Webnet তারপর আপনি পিএইচপি টাইপ LoadModules পরিবর্তন বিবেচনা করা উচিত, তাই এটি পিএইচপি [পড়া stackoverflow.com/questions/5121495/...
এর মধ্যে Merey Nurlan

15

এটি কারও পক্ষে সহায়ক হতে পারে। এখানে httpd.conf থেকে স্নিপেট রয়েছে (অ্যাপাচি সংস্করণ ২.২ উইন্ডো)

# DirectoryIndex: sets the file that Apache will serve if a directory
# is requested.
#
<IfModule dir_module>
    DirectoryIndex index.html
    DirectoryIndex index.php
</IfModule>

এখন এটি সূচি। html ফাইলের সন্ধান করবে যদি এটি খুঁজে না পাওয়া যায় তবে এটি সূচি.এফপি খুঁজবে।


3

নিম্নলিখিতটি দিয়ে একটি .htaccess ফাইল তৈরি করার চেষ্টা করুন

DirectoryIndex index.php

সম্পাদনা করুন: আসলে, কোনও 'পিএইচপি-অ্যাপাচি' প্যাকেজ বা এমন কিছু নেই যা আপনি উভয়ের সাথে ইনস্টল করার কথা?


3

আমাদের প্রত্যক্ষ অ্যাডমিন হোস্ট করা সাইটের কোনও সাইটের সাথে আমার একই সমস্যা ছিল। আমি যোগ করলাম

DirectoryIndex index.php

একটি কাস্টম httd এক্সটেনশান হিসাবে (যা কোনও সাইটের httpdফাইলে কোড যুক্ত করে ) এবং তখন সাইটটি index.phpডিফল্টরূপে চালিত হয় ।


2

আমার জন্য একই সমস্যা। আমার সমাধানটি ছিল যে আমার ভার্চুয়ালহোস্ট ফাইলে নির্দেশিকাটি পড়ার সময় মোড_ডির সক্ষম ছিল না এবং অ্যাপাচি 2 ত্রুটি জারি করছিল না:

DirectoryIndex index.html

কমান্ড ব্যবহার করে:

sudo a2enmod dir
sudo sudo service apache2 restart

ইস্যু স্থির।


1
আমার মনে হয় তুমি বোঝাতে চাচ্ছো a2enmod?
টিআরএসলাইমে

1

তথ্যের জন্য: কিছু অ্যাপাচি 2 কনফিডে আপনাকে অবশ্যই Mods_enabled / dir.conf এ ডিরেক্টরী ইনডেক্স কমান্ডটি যুক্ত করতে হবে (এটি অ্যাপাচি 2 সিএনএফ তে নেই)


1

এই সমস্ত কিছু পড়ার পরে এবং এটি ঠিক করার চেষ্টা করার পরে আমি উবুন্টু ফোরামের একটি সহজ সমাধান পেয়েছি ( https://help.ubuntu.com/commune/ApacheMySQLPHP )। সমস্যাটি libapache2-mod-php5 মডিউল নিয়ে। ব্রাউজার ওয়েব পৃষ্ঠাগুলি দেখানোর চেয়ে সূচী.পিএফপি ফাইলটি ডাউনলোড করে কেন তা। নিম্নলিখিতটি করুন। যদি sudo a2enmod php5 রিটার্ন মডিউলটি না থাকে তবে সমস্যাটি libapache2-mod-php5 নিয়ে। কমান্ড sudo apt-get দিয়ে মডিউলটি সরিয়ে ফেলুন - পরস্পর অপসারণ libapache2-mod-php5 তারপর এটি পুনরায় ইনস্টল করুন sudo apt-get libapache2-mod-php5 ইনস্টল করুন


1

আমারও তেমন লক্ষণ ছিল। যদিও আমার ক্ষেত্রে, আমার বুদ্ধিহীনতা অনিচ্ছাকৃতভাবে ওয়েব শিকড় ফোল্ডারে একটি খালি সূচি। Html ফাইল রাখছিল। DirectoryIndexনিম্নরূপে কনফিগার করা হওয়ার পরে আমি স্পষ্টভাবে ইনডেক্স.এফপি অনুরোধ করিনি, তখন আপাচি সূচিপত্রের চেয়ে এটি পরিবেশন করছিল mods-available/dir.conf:

DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm

অর্থাৎ অগ্রাধিকার তালিকায় 'index.tpp' এর আগে 'index.html' উপস্থিত হয়। ওয়েব রুট থেকে সূচী। Html ফাইলটি সরানো প্রাকৃতিকভাবে সমস্যার সমাধান করেছে। ডি আহা!


1

ধাপে ধাপে এবং উবুন্টু 16.04.4 এলটিএস এবং অ্যাপাচি / 2.4.18 এর সম্পূর্ণ নির্দেশনা

" sudo -s"

" cd /etc/apache2/mods-enabled"

" vi dir.conf" এবং নীচে ডাইরেক্টরি ইন্ডেক্সের পরে সূচি.এফপি ডানদিকে সরান এবং ফাইল সংরক্ষণ করুন তারপর অ্যাপাচি সার্ভার পুনরায় চালু করুন।

ডিরেক্টরি ইন্ডেক্স সূচক। পিএফপি সূচক

" service apache2 restart"

আপনি যদি dir.conf দেখতে না পান তবে আপনাকে এটি লোড করতে হবে (কীভাবে গুগল করবেন)

সম্পন্ন.


1

এই পোস্টটি পুরানো হতে পারে তবে আমি কেবল এটি পোস্ট করছি যদি এটি অন্য কোনও ব্যক্তিকে সহায়তা করে তবে আমি আপনার ওয়েবের মূলের মধ্যে একটি .htaccess ফাইল তৈরি করতে এবং সূচি পরিবর্তন করার পরামর্শ দেব না। আমি মনে করি পদক্ষেপগুলি অনুসরণ করা ভাল

  1. আপনার অ্যাপাচি ফোল্ডারের খনিটির কনফিড ফোল্ডারে যান

    C:\Apache24\conf

  2. নামের ফাইলটি খুলুন

    httpd.conf

  3. বিভাগে যান

    <IfModule dir_module>
       DirectoryIndex index.html 
    
     </IfModule>
  4. নীচে প্রদর্শিত হিসাবে এটিতে index.php যুক্ত করুন

     <IfModule dir_module>
      DirectoryIndex index.html index.php
    
    </IfModule>

এইভাবে, এটি এখনও সূচী। Html এবং index.phpটিকে ডিফল্ট সূচক হিসাবে বেছে নিয়েছে তবে সূচক html কে অগ্রাধিকার দিচ্ছে কারণ ইনডেক্স.এইচটিএমএল * ইনডেক্স.এফপি এর আগে এসেছিল। এর অর্থ এই যে আপনি একই ডিরেক্টরিতে সূচক। Html এবং সূচি.পি.পি. উভয়ই রেখেছেন, সূচিপত্রের HTML_tl এর আগে আপনি ** index.php * না লিখে সূচক html ডিফল্ট সূচক হিসাবে ব্যবহৃত হবে

আমি আশা করি এটি কাউকে সাহায্য করবে ... শুভ কোডিং


1

এই এক মোহন মত কাজ!

প্রথম

<IfModule dir_module>
    DirectoryIndex index.html
     DirectoryIndex index.php
</IfModule>

তারপর যে পরে

<Files ".ht*">
    Require all denied
</Files>

প্রতি

 <Files ".ht*">
    Require all granted
</Files>
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.