Heim  >  Artikel  >  Backend-Entwicklung  >  So entfernen Sie index.php in Apache2

So entfernen Sie index.php in Apache2

PHPz
PHPzOriginal
2023-03-31 09:09:55584Durchsuche

Apache2去掉index.php

Apache是一种常用的开源Web服务器,具有开放性和灵活性。 在使用Apache进行PHP开发时,大多数情况下需要使用index.php作为默认文件。但是,在某些情况下需要将url中的index.php删除,这通常称为美化url。本文将介绍如何使用Apache2在url中去除index.php。

  1. 更改Apache配置文件

打开Apache的配置文件,通常存储在/etc/apache2/apache2.conf或/etc/httpd/conf/httpd.conf中。 找到以下行:

<Directory /var/www/html>
    Options Indexes FollowSymLinks
    AllowOverride None
    Require all granted
</Directory>

将AllowOverride None更改为AllowOverride All。

<Directory /var/www/html>
    Options Indexes FollowSymLinks
    AllowOverride All
    Require all granted
</Directory>

然后,在同一个文件中找到以下行:

<IfModule mod_rewrite.c>
    RewriteEngine On
    RewriteBase /
    RewriteRule ^index\.php$ - [L]
    RewriteCond %{REQUEST_FILENAME} !-f
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteRule . /index.php [L]
</IfModule>

删除RewriteRule ^index.php$ - [L]以及RewriteRule . /index.php [L]。 保存并关闭文件。

  1. .htaccess文件设置

在您的Web站点的主目录中创建一个名为.htaccess的文件。打开它并添加以下代码:

<IfModule mod_rewrite.c>
    Options +FollowSymLinks
    RewriteEngine On
    RewriteBase /

    #去掉index.php的代码
    RewriteCond %{REQUEST_FILENAME} !-d
    RewriteCond %{REQUEST_FILENAME}\.php -f #RewriteCond %{REQUEST_FILENAME} !-f
    RewriteRule ^(.*)$ $1.php [L]
</IfModule>

在这个代码块中,添加了一行RewriteCond,以确保当url请求一个可能存在的文件时,Apache服务器不会再处理该请求。另外,添加了一条新的RewriteRule,当一个url中包含index.php时,它将替换该部分。

  1. 重新启动Apache服务器

在保存了更改后,重新启动Apache服务器。输入sudo service apache2 restart或sudo /etc/init.d/apache2 restart命令并按Enter键以重新启动Apache服务器。

现在,在您的URL中不再需要输入index.php,例如www.abc.com/index.php/about将改为www.abc.com/about。

总结

Apache2是一种流行的开放源码Web服务器。 使用Apache进行PHP开发时,通常需要使用index.php作为默认文件。但在某些情况下,需要将url中的index.php删除,这通常称为美化url。 本文介绍了如何使用Apache2在url中去除index.php,并提供了三个必要的步骤。

Das obige ist der detaillierte Inhalt vonSo entfernen Sie index.php in Apache2. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn