我有一个网站,我想暂时托管我的VPS,但我遇到了问题。
在'sites-available'中创建'.conf'文件并激活该站点后,许多文件未正确链接到。
这是我的.conf配置:
# domain: mynewsdesk.dev
# public: /var/www/html/mynewsdesk.dev/public
<VirtualHost *:80>
ServerAdmin anderson@nothingandco.com
ServerName mynewsdesk.dev
ServerAlias www.mynewsdesk.dev
DirectoryIndex index.php
DocumentRoot /var/www/html/mynewsdesk.dev/
ErrorLog /var/www/html/mynewsdesk.dev/public/logs/error.log
CustomLog /var/www/html/mynewsdesk.dev/public/logs/access.log
combined
</VirtualHost>
在Chrome检查器中,我看到“无法加载资源:服务器响应状态为404(未找到)”,后跟明显不正确的路径,例如:http://45.79.67.59/mynewsdesk.dev/css/main.css.php。
我应该更改哪些设置,以便从'mynewsdesk.dev/public/'而不是'mynewsdesk.dev'中提取文件?
答案 0 :(得分:1)
将您的DocumentRoot
更改为/var/www/html/mynewsdesk.dev/public/
。
或者,如果您要在该目录之外运行要运行的脚本,并且启用了mod_rewrite
,则可以添加一些重写条件和规则以从public
返回文件并指示所有对这些脚本的其他请求。
例如,在你的vhost中:
RewriteEngine on
RewriteCond %{DOCUMENT_ROOT}/public%{REQUEST_URI} -f
RewriteRule ^(.+)$ %{DOCUMENT_ROOT}/public/$1 [L]
RewriteRule ^(.*)$ index.php?$1 [NC,L,QSA]