Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Apache 忽略Symfony路由,改为提供文件夹_Apache_.htaccess_Mod Rewrite - Fatal编程技术网

Apache 忽略Symfony路由,改为提供文件夹

Apache 忽略Symfony路由,改为提供文件夹,apache,.htaccess,mod-rewrite,Apache,.htaccess,Mod Rewrite,我有一个Symfony 4项目,它没有什么特别的,但在public/blog内部,我有一个Wordpress项目,我想提供该文件夹,而不是在我进入“mydomain/blog”时由Symfony的路由系统处理 我在.htaccess中有这个,它是symfony生成的默认配置(我想) 这感觉有点像没有答案,但是。。。如果WordPress(在/blog子目录中)配置正确,您实际上不需要执行任何特殊操作 您应该已经在/blog子目录中有一个额外的.htaccess文件,其中包含mod_rewrite

我有一个Symfony 4项目,它没有什么特别的,但在
public/blog
内部,我有一个Wordpress项目,我想提供该文件夹,而不是在我进入“mydomain/blog”时由Symfony的路由系统处理

我在.htaccess中有这个,它是symfony生成的默认配置(我想)


这感觉有点像没有答案,但是。。。如果WordPress(在
/blog
子目录中)配置正确,您实际上不需要执行任何特殊操作

您应该已经在
/blog
子目录中有一个额外的
.htaccess
文件,其中包含mod_rewrite指令,用于处理WordPress的URL路由

例如,
/blog/.htaccess
文件应包含以下内容:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]
</IfModule>
# END WordPress
您需要修改此文件,使其看起来像第一个
.htaccess
文件。或者像下面这样(更像是“WordPress方式”,但本质上是一样的),例如:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>
# END WordPress
#开始WordPress
重新启动发动机
重写库/博客
重写规则^index\.php$-[L]
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写规则/blog/index.php[L]
#结束WordPress
上述操作与第一个
.htaccess
文件相同,只是子目录(不必要)是硬编码的。如果你让WordPress修改
.htaccess
文件,那么我相信它会像这样更新它

您还需要确保WordPress
WP_SITEURL
(站点URL)和
WP_HOME
(主页URL)设置正确配置(在仪表板或
WP config.php
文件中),以便为
/blog
子目录中的文件提供服务,并确保
/blog
出现在URL中


但是请注意,root
.htaccess
文件中的其他非mod_rewrite指令仍将从WordPress安装中继承。不过,看看您的指令,这可能是一件好事。除了如果您的系统实际上没有启用mod_rewrite,但我假设您已经在使用“漂亮”的URL了?在这种情况下肯定是这样。

这感觉有点像没有答案,但是。。。如果WordPress(在
/blog
子目录中)配置正确,您实际上不需要执行任何特殊操作

您应该已经在
/blog
子目录中有一个额外的
.htaccess
文件,其中包含mod_rewrite指令,用于处理WordPress的URL路由

例如,
/blog/.htaccess
文件应包含以下内容:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . index.php [L]
</IfModule>
# END WordPress
您需要修改此文件,使其看起来像第一个
.htaccess
文件。或者像下面这样(更像是“WordPress方式”,但本质上是一样的),例如:

# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>
# END WordPress
#开始WordPress
重新启动发动机
重写库/博客
重写规则^index\.php$-[L]
重写cond%{REQUEST_FILENAME}-F
重写cond%{REQUEST_FILENAME}-D
重写规则/blog/index.php[L]
#结束WordPress
上述操作与第一个
.htaccess
文件相同,只是子目录(不必要)是硬编码的。如果你让WordPress修改
.htaccess
文件,那么我相信它会像这样更新它

您还需要确保WordPress
WP_SITEURL
(站点URL)和
WP_HOME
(主页URL)设置正确配置(在仪表板或
WP config.php
文件中),以便为
/blog
子目录中的文件提供服务,并确保
/blog
出现在URL中


但是请注意,root
.htaccess
文件中的其他非mod_rewrite指令仍将从WordPress安装中继承。不过,看看您的指令,这可能是一件好事。除了如果您的系统实际上没有启用mod_rewrite,但我假设您已经在使用“漂亮”的URL了?在这种情况下必须如此。

像这样在一次安装中混合完全独立的运行时环境通常会导致头痛。我建议你把你的博客放在一个三级域名上,比如blog.mydomain.com,让它自己独立安装。然后,Symfony和WordPress应用程序都生活在各自独立的环境中(甚至在其服务器上),它们永远不会冲突。而且这听起来更像是服务器故障问题。在一次安装中混合完全独立的运行时环境通常会导致头痛。我建议你把你的博客放在一个三级域名上,比如blog.mydomain.com,让它自己独立安装。然后Symfony和WordPress应用程序都生活在各自独立的环境中(甚至在其over Server上),它们永远不会发生冲突。这听起来更像是一个服务器故障问题。
# BEGIN WordPress
<IfModule mod_rewrite.c>
RewriteEngine On
RewriteBase /blog
RewriteRule ^index\.php$ - [L]
RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule . /blog/index.php [L]
</IfModule>
# END WordPress