除非指向 index.php,否則無法讓應用程序使用 htaccess
我很難讓我的一個應用程序在其路徑中使用 htaccess 文件,除非我直接指向瀏覽器中的 index.php
我已經在我的電腦上安裝了 ubuntu:
Distributor ID: Ubuntu Description: Ubuntu 15.10 Release: 15.10 Codename: wily
我已經在我的電腦上安裝了 apache:
Server version: Apache/2.4.12 (Ubuntu) Server built: Jul 24 2015 15:59:11
我嘗試將以下程式碼添加到我的
/etc/apache2/apache2.conf
<Directory /var/www/html/pss/> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory>
我也這樣嘗試過:
<Directory /var/www/html/pss/html> Options Indexes FollowSymLinks AllowOverride None Require all granted </Directory>
如您所見,此程式碼指向 location
/var/www/html/pss
。在我的里面我pss folder
有一個html
文件夾。在這個 html 文件夾中,我有一個.htaccess
和index.php
文件。如果我將瀏覽器指向http://localhost/pss/html>它不起作用但是如果我轉到<http://localhost/pss/html/index.php它似乎可以工作
我在我
htaccess
的指令中添加了:DirectoryIndex index.php
。這沒有用。這是我的.htaccess
文件:SetEnv APPLICATION_ENV development DirectoryIndex index.php php_value session.auto_start 0 RewriteEngine On RewriteCond %{REQUEST_FILENAME} -f [OR] RewriteCond %{REQUEST_FILENAME} -s [OR] RewriteCond %{REQUEST_FILENAME} -l [OR] RewriteCond %{REQUEST_FILENAME} -d RewriteRule ^.*$ - [NC,L] RewriteRule ^.*$ index.php [NC,L]
它位於
/var/www/html/pss/html/.htaccess
據我所見,當我轉到 url/index.php 時它使用 htaccess,但當我自己轉到 url 時不使用
如果您需要任何進一步的資訊,請告訴我。
重要的是要注意,您在 apache2.conf 文件中放置的“AllowOverride”指令控制使用者是否能夠通過 .htaccess 文件修改網路伺服器的行為。
通過將其設置為無,您實際上是在阻止您的 .htaccess 產生任何影響!您很可能希望將其設置為 All,或者例如 Indexes,因為您正在嘗試更改索引參數。
最後,如果您有權訪問 Web 伺服器,還可以直接在 Apache2 配置文件中設置這些參數。.htaccess 文件的主要用途是在使用者無權訪問 Web 伺服器配置的共享 Web 主機上使用。