Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/292.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
Php .htaccess我的网站公共部分的文件配置_Php_Apache_.htaccess_Mod Rewrite - Fatal编程技术网

Php .htaccess我的网站公共部分的文件配置

Php .htaccess我的网站公共部分的文件配置,php,apache,.htaccess,mod-rewrite,Php,Apache,.htaccess,Mod Rewrite,我正在尝试在线部署我的站点,.htaccess文件在localhost中运行良好,但在我的共享托管域中,该文件的运行方式似乎不一样 我在根目录(htdocs)文件夹中有一个public文件夹,用于提供公共文件,我使用了两个.htaccess文件,一个在公共目录中,另一个在根目录(htdocs)文件夹中 .htdocs文件夹的htaccess RewriteCond %{HTTP_HOST} ^mysite\.morehere\.net$ [OR] RewriteCond %{HTTP_HOST}

我正在尝试在线部署我的站点,
.htaccess
文件在
localhost
中运行良好,但在我的共享托管域中,该文件的运行方式似乎不一样

我在根目录(htdocs)文件夹中有一个
public
文件夹,用于提供公共文件,我使用了两个
.htaccess
文件,一个在公共目录中,另一个在根目录(
htdocs
)文件夹中

.htdocs文件夹的htaccess

RewriteCond %{HTTP_HOST} ^mysite\.morehere\.net$ [OR]
RewriteCond %{HTTP_HOST} ^www\.mysite\.morehere\.net$
RewriteCond %{REQUEST_URI} !^/public/
RewriteRule (.*) /public/$1
还有公共目录

# --- Homepage
RewriteRule ^home$ index.php [NC]
RewriteRule ^home/$ index.php [NC,L]

# --- articles page
RewriteRule ^articles $ articles.php [NC]
RewriteRule ^articles /$ articles.php [NC]
........
我的目的是使URL搜索引擎友好并吸引用户

编辑:我已确保已打开生产服务器上的
mod_rewrite
,但页面仍会重定向到未找到的页面

mysite.morehere.net/home/
被重定向到找不到的页面


谁能帮我找出问题所在。

检查生产服务器上的mod_rewrite是否已打开。

您可能从未听说过称为Front Controller的东西。在开始编写应用程序之前,您最好先了解一下它。是否可以显示
/public/.htaccess
的完整代码?是的!我将htdocs
.htaccess
文件中的代码复制到public.htaccess文件中,它成功了:)