Php 此.htaccess文件的说明

Php 此.htaccess文件的说明,php,regex,.htaccess,Php,Regex,.htaccess,我最近在我的网站根目录中添加了一个.htaccess文件,以实现我在这个问题中已经提出的目标: 现在,最重要的答案是聪明的,它在本地主机上工作,但在我的服务器上却没有 老实说,我不太清楚.htaccess中的这些语句到底是什么意思。如果有人能逐行解释,我将不胜感激 这就是我所拥有的 <IfModule mod_rewrite.c> RewriteEngine On RewriteBase / RewriteRule ^index\.php$ - [L] RewriteCond %{

我最近在我的网站根目录中添加了一个.htaccess文件,以实现我在这个问题中已经提出的目标:

现在,最重要的答案是聪明的,它在本地主机上工作,但在我的服务器上却没有

老实说,我不太清楚.htaccess中的这些语句到底是什么意思。如果有人能逐行解释,我将不胜感激

这就是我所拥有的

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

重新启动发动机
重写基/
重写规则^index\.php$-[L]
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写规则/index.php[L]
#如果重写模块可用
把引擎打开#把它打开
重写基/#设置/到相对根路径
重写规则^index\.php$-[L]#不要重写index.php并停止其余规则
重写cond%{REQUEST_FILENAME}-f#如果文件不存在
重写cond%{REQUEST_FILENAME}-d#和文件不是目录
重写规则/index.php[L]#显示索引页面
#关闭IfModule子句
我怀疑如果它在您的服务器上不起作用,则域或服务器配置的根目录设置不正确。您需要了解文件的位置以及httpd.conf是如何配置为使用这些路径的


另外,下一次Apache在这个模块上有一个更深入的应用程序,它应该涵盖我刚才所说的所有内容。

实际的问题是我的virtualhost上没有启用重写。 所以我在虚拟主机中启用了它,现在一切都正常了

<VirtualHost *>
             ServerName mysite.com
             DocumentRoot /var/www/html/mysite.com
        <Directory /var/www/html/mysite.com>
                Options FollowSymLinks
                AllowOverride all
        </Directory>
</VirtualHost>

服务器名mysite.com
DocumentRoot/var/www/html/mysite.com
选项如下符号链接
允许超越所有

您为什么不先阅读优秀的文档,然后询问还有什么需要理解的?你的回答提供了信息,但不是解决方案。我对你的努力投了更高的票。非常感谢。
<VirtualHost *>
             ServerName mysite.com
             DocumentRoot /var/www/html/mysite.com
        <Directory /var/www/html/mysite.com>
                Options FollowSymLinks
                AllowOverride all
        </Directory>
</VirtualHost>